מדריך: שורת הפקודה - תגובות
-
@nigun אויש, טעיתי, התכוונתי למה
exec
חייבת להיות פנימית
תיקנתי עכשיו.
תודה על לקיחת שיעורי הבית ברצינות
אם תענה גם כל זה, תקבל שני בונוסים...@nigun אמר במדריך: שורת הפקודה - תגובות:
בגלל echo help?
לא הבנתי מה הכוונה?
לענ"דhelp
חייבת להיות פקודה פנימית כי כך היא נותנת עזרה על פקודות פנימיות דוקא. מכיון שהיא פנימית היא יודעת על כל הפקודות הפנימיות. -
@yossiz לא יודע האם עדיין אפשר לשאול אבל מנסה...
ראשית תודה על המדריך היפה הזה! אני מאד מתעניין בזה, בעיקר כי זה פותח אפשרויות ללא גבול [כמעט].
רק שאלה קטנה: אני מנסה בכמה אופנים להריץ 2 פקודות עם הפסק של תו & ביניהם, בכדי להריץ את שניהם. אבל אני שם לב לכך שבCMD זה עובד אבל בצורה של קובץ עם סיומת .BAT , זה מריץ את הראשון אבל רק אחרי שנסגר הראשון מתבצעת הפקודה הבאה. אשמח להבין למה וגם מה בעצם לעשות.
אציין - שמדובר על פקודה פשוטה ממש, של פתיחת 2 תוכנות. כגון הפקודה הבאה: osk & start chrome
[אולי משנה מה הפקודה, אז אני מציין].עריכה - עכשיו אני רואה שבפקודה: start WordPad& notepad זה כן מפעיל את שניהם בסיומת BAT. ולע"ע אני לא מבין את ה'חילוק'.
-
@05484 אפשר לשאול, אם אענה זו כבר שאלה אחרת
הסיפור הוא כזה:
יש שני סוגי תוכנות בווינדוס: תוכנות גרפיות, ותוכנות שורת הפקודה. אפשר לראות את ההבדל, שתוכנות שורת הפקודה נפתחים בתוך חלון שחור של CMD, ותוכנות גרפיות לא.
כאשר אתה משרשר פקודות בשורת הפקודה, אז בעיקרון הם רצים אחד אחרי השני ולא במקביל. ז.א. שבעקרון ה-CMD מחכה לסיום הפקודה הראשונה לפני שהוא יריץ את הפקודה השניה.
כלל זה נכון לגמרי בתוכנות שורת הפקודה, או בפקודות פנימיות של CMD.
תוכנות גרפיות הם יוצאים מן הכלל, ששם ההתנהגות שונה.- אם פתחת חלון CMD אינטראקטיבי, ומתוכה הרצת תוכנה גרפית כלשהו, אז CMD מתנהג כאילו הפקודה הסתיימה מיד כאשר החלון של התוכנה נוצר
- אם הרצת מתוך קובץ BAT, אז אין הבדל בין תוכנה גרפית לתוכנת שורת הפקודה
אם אתה רוצה להריץ תוכנה כלשהו מתוך סקריפט ושהשליטה תחזור מיד לסקריפט בלי לחכות שהתוכנה תסתיים, משתשמים בפקודת
start
שנועד להריץ תוכנה "ברקע" ולחזור מיד להמשך הסקריפט.עכשיו הכל מובן?
-
@05484 אגב, במקרה שלך אני לא חושב שיש ענין לשרשר עם
&
אפשר פשוט לכתוב את הפקודות כל אחת בשורה נפרדת אחת אחרי השניה
משתמשים ב-&
כאשר רוצים שהפודה השניה תרוץ רק אם הראשונה הסתיימה בהצלחה.
מכיון שהראשונה היא תוכנה גרפית במקרה שלך, אין כל כך משמעות לבדוק את ההצלחה של הפקודה.עריכה: הדברים שכתבתי לא נכונים, קורה... ה-
&
הוא במקום מעבר שורה, רק&&
בודק את התוצאה של הפקודה. תודה @צדיק-תמים על התיקון