Dos/לולאות

מתוך ויקיספר, אוסף הספרים והמדריכים החופשי
< Dos

חזרה על החומר[עריכה]

לפני שנמשיך הלאה לתוכניות מתקדמות, נעשה חזרה קצרה על מה שלמדנו עד כה. אם ברצונך להמשיך הלאה לחץ כאן.

פקודת echo[עריכה]

הפקודה מציגה את המחרוזת שבאה אחריה.
echo off/on מראה/מסתיר את המיקום בו DOS נמצא.
%echo %a מדפיס על המסך את הערך במשתנה a.

פקודת cd[עריכה]

cd זוהי פקודה שמעבירה את המשתמש בין תיקיות. /:cd /D D תעביר אותי לכונן :D ..cd תחזיר אותי תיקייה אחורה (תיקיית השורש) .cd יעביר אותי לתיקייה קדימה שנמצאת בתיקייה הנוכחית שבה הDOS נמצא.

dir[עריכה]

הצגת הקבצים והתיקיות שבתיקייה הנוכחית.

set[עריכה]

הפקודה מכניסה ערכים למשתנים.

הצהרה על משתנים[עריכה]

בכדי ליצור משתנה חדש צריך לכתוב (במקום NUMBER נכתוב מספר): set a = NUMBER הפקודה תיצור משתנה בשם a ותכניס לו את הערך NUMBER (המספר שבחרנו).

טיפול בערכי משתנה[עריכה]

כשרוצים לשנות או להשתמש בערך שנמצא במשתנה יש לתחום את המשתנה בין שני סימני %.

לדוגמה, להציג את הערך במשתנה a.

echo The value in a is: %a%

דוגמה להורדת 10 מערך המשתנה:

echo off 
set /a a = %a% -10
pause
קבלת ערכים מהמשתמש[עריכה]

אם נרצה לקבל ערכים כלשהם מהמשתמש נכתוב:

set /p a = "Enter value:" %=%
הצגת משתנים[עריכה]

אם רוצים להציג את כל המשתנים הפעילים בתוכנית ואת ערכם רושמים: set אם רוצים להציג את כל המשתנים הפעילים בתוכנית שמתחילים באות או בביטוי מסוים רושמים (כשexpression מוחלף באות או בביטוי שנרצה): set (expression)

משתנים מיוחדים[עריכה]

משתנים המכילים מידע מערכת, דוגמת OS (שם מערכת ההפעלה) או USERNAME (שם המשתמש הפעיל). לרשימה המלאה

צבעים[עריכה]

בכדי לצבע נשתמש בפקודה color.

צבעי ברירת המחדל[עריכה]

הצבעים שאיתם DOS נפתח (TEXT: 7 BACKGROUND: 0)
בשביל לאפס את הצבעים יש לרשום: color

צביעת הטקסט[עריכה]

בשביל לצבוע טקסט בלבד יש לרשום (כמובן במקום x לרשום ספרה או אות קבילה a-f): color x

צביעת רקע וטקסט[עריכה]

בשביל לצבוע את הרקע ואת הטקסט יש לרשום (כמובן במקום xy לרשום ספרות או אותיות קבילות a-f): color xy

לולאות[עריכה]

אחרי שחזרנו על החומר אפשר להמשיך הלאה.

מהן לולאות?[עריכה]

לולאה אוגרת בתוכה מספר פקודות (או לפעמים פקודה אחת) שאפשר לבצע אותן מספר פעמים. הלולאה הנפוצה היא for.

לולאת for[עריכה]

זוהי אחת הלולאות הכי נפוצות בקבצי batch, זוהי לולאה שעושה מספר פקודות מספר מוגדר של פעמים (מובן שיש שימושים נוספים ללולאה אך אנו נתמקד בשימוש העיקרי והנפוץ שלה).

אופן הכתיבה[עריכה]

נתון תרגיל: כתוב 10 פעמים את המשפט this is for loop.

איך עושים את זה? נכתוב כך:

for /L %%a in (1,1,10) do echo this is for loop

נעבור על כל חלק בלולאה.
for אומר לDOS להשתמש בלולאת FOR
L/ אומר לDOS שסוג לולאת הFOR הוא חזרה על פקודות לפי מספר כלשהו.
a%% זהו המשתנה אליו נכנסים הערכים בסוגריים (מונה הלולאה).
(in (1,1,10 מצביע על מספר הפעמים שהלולאה תבוצע. ה-1 הראשון אומר מהו הערך הראשון שנכניס לa%% (במקרה שלנו זה 1), ה-2 אומר בכמה להעלות את ערך הa%% בכל חזרה של הלולאה וה-10 אומר עד לאיזה מספר להגיע (הלולאה תצא רק אחרי שהערך בa%% יהיה גדול מ-10).
do אומר ללולאה אילו פקודות לבצע (אם אין סוגריים הלולאה תבצע רק את הפקודה הראשונה שאחרי do).
echo this is for loop מדפיס את ההודעה "this is for loop".

עכשיו תורכם:

כתוב קובץ bat המריץ לולאת for הרצה 5 פעמים שמדפיסה מהו המונה שלה

התשובה:

echo off
for /L  %%a in (1,1,5) do echo %%a
pause
הפרק הקודם: לולאות הפרק הבא:
פקודת color תרגילים התנאי if