1.4 באצ' בסיסי 3 הרצאה
אופרטורים ב-Batch¶
במהלך העבודה עם הטרמינל, אנו יכולים להשתמש באופרטורים כדי לחבר פקודות ולשלוט על אופן ביצוען.
אופרטורים בסיסיים¶
|(pipe - צינור) מחבר בין פקודות: הפלט של הפקודה הראשונה מועבר לקלט של הפקודה השנייה.
>מפנה את הפלט של הפקודה לקובץ (מחליף את התוכן אם הקובץ קיים):
>>מפנה את הפלט של הפקודה לקובץ, אך מוסיף לתוכן הקיים:
אופרטורים מתקדמים¶
;מאפשר להריץ פקודות ברצף ללא תלות בהצלחתן:
&&מריץ את הפקודה השנייה רק אם הפקודה הראשונה הסתיימה בהצלחה:
||מריץ את הפקודה השנייה רק אם הפקודה הראשונה נכשלה:
קונכיה - shell¶
- קונכיה, או shell - היא התוכנה שרצה בטרמינל שלנו שנותנת לנו גישה לכל הפקודות במחשב, עד כו שהשתמשנו בטרמינל cmd, שכברירת מחדל פותח את הshell שנקרא באצ' - batch.
- אפשר להגיד שטרמינל זה תוכנה שאחראית לפתוח לנו shell-ים, וshell-ים הם התוכנות שבסוף מאפשרות לנו להריץ את כל הפקודות.
- הshell באצ' שהתחלנו ללמוד היום, הוא shell מאוד שימושי עם המון פקודות, כדי לראות את כל הפקודות תוכלו לכתוב את הפקודה
helpולראות בעצמכם רשימה של כל הפקודות, קיים תיעוד של כל הפקודות האלו באתר: https://ss64.com/nt/ - בשיעור הבא נלמד על דרכים לפתח סקריפטים עם batch - לכתוב ממש קוד בשפת batch.
פקודות בbatch¶
- בbatch קיימים שני סוגי פקודות:
- פקודות מובנות, פקודות שמובנות בתוך התוכנה batch שיצרנו בשבילנו שאנחנו משתמשים בהם כדי לבצע פעולות שקשורת לshell שלנו, למשל cd, color, exit - פקודות אלה הן פקודות שעושות פעולה בתוך הshell שלנו, למשל color משנה את הצבע של הshell, הפקודה cd משנה את הנתיב שהshell שלנו נמצא בו, וexit יוצא מהshell. הפקודה
helpמציגה את כל הפקודות המובנות בbatch - פקודות חיצוניות, תוכנות שאנשים בעולם כתבו שאנחנו יכולים להריץ אותם כפקודה, למשל dir, mkdir, rmdir, notepad הם תוכנות שאנשים בעולם כתבו שbatch מאפשר לנו להריץ אותם כיאלו שהם פקודות, ומאפשר לנו אפילו להעביר להם פרמטרים. למשל הפקודה python, שלמדנו עלייה בקורס תכנות, היא פקודה שלא קשורה לbatch, היא תוכנה שקיימת שהתקנו על המחשב וbatch זיהה אותה, ומאפשר לנו להריץ אותה ממש כפקודה בshell.
- פקודות מובנות, פקודות שמובנות בתוך התוכנה batch שיצרנו בשבילנו שאנחנו משתמשים בהם כדי לבצע פעולות שקשורת לshell שלנו, למשל cd, color, exit - פקודות אלה הן פקודות שעושות פעולה בתוך הshell שלנו, למשל color משנה את הצבע של הshell, הפקודה cd משנה את הנתיב שהshell שלנו נמצא בו, וexit יוצא מהshell. הפקודה
משתני סביבה¶
- במערכת הפעלה ווינדוס משתני סביבה הם משתנים גלובלים במערכת ההפעלה שכל התוכנות מקבלות. קיימים המון משתני סביבה שנוצרים אוטמטית (עליהם נדבר) וגם כל אחד יכול ליצור ולערוך משתני סביבה חדשים. קיימים משתני סביבה לכל המערכת ומשתני סביבה לכל משתמש.
- כדי לגשת לכל המשתני סביבה כתבו בחיפוש במחשב (אם המחשב שלכם באנגלית) "enviroment" ולחצו על התוצאה הראשונה, ואם המחשב שלכם בעברית כתבו "סביבה" וחפשו "משתני סביבה".
- יפתח לכם חלון כזה,

לחצו על envrioment variables. - שם תוכלו לראות את כל המשתני סביבה שלכם.
- תוכלו לראות גם בshell את המשתני סביבה שלכם באמצעות הפקודה
set.
משתני סביבה שכדאי לכם להכיר:¶
-
- המשתנה "PATH"
המשתנה הזה מכיל רשימה של נתיבים (directories) במחשב, שבהם ה-Shell מחפש קבצים כדי להריץ פקודות חיצוניות. לדוגמה, אם נרצה להריץ את הפקודהdir, המחשב יבדוק אם התוכנה קיימת באחד הנתיבים שמופיעים במשתנה ה-"PATH". למשל, התוכנהdirנמצאת בתיקייתC:\Windows\System32, ולכן אם נקליד את הפקודה הזו, ה-Shell ימצא אותה שם ויריץ אותה. אם לא היה את המשתנה "PATH", לא היינו יכולים להריץ פקודות חיצוניות בקלות. כאשר התקנו את Python, לדוגמה, היינו צריכים להוסיף את תיקיית ה-Python למשתנה ה-"PATH", כדי ש-Python יהיה זמין להרצה מכל מקום.
- המשתנה "PATH"
-
המשתנה
%USERNAME%
הפקודהecho %USERNAME%תציג את שם המשתמש שמחובר כעת למערכת, כלומר את שם החשבון שבו אתם משתמשים. -
המשתנה
%COMPUTERNAME%
הפקודהecho %COMPUTERNAME%תציג את שם המחשב שאליו אתם מחוברים, כך תוכלו לדעת על איזה מחשב אתם עובדים במקרה של עבודה עם כמה מכשירים. -
המשתנה
%OS%
הפקודהecho %OS%תציג את הגרסה של מערכת ההפעלה המותקנת על המחשב. לדוגמה, ייתכן שתקבלו את הפלטWindows_NTאם אתם משתמשים במערכת הפעלה Windows. -
המשתנה
%USERPROFILE%
הפקודהecho %USERPROFILE%תציג את הנתיב אל תיקיית הבית של המשתמש הנוכחי. תיקיית הבית היא המקום שבו שומרים קבצים אישיים של המשתמש, כגון הגדרות או קבצים שהורדו.
סיכום¶
- היום למדנו המון פקודות ואופרטורים בbatch, למדנו גם על משתני סביבה ועל ההבדל בין פקודות מובנות לחיצוניות בbatch.
- בפרק הבא נלמד על כתיבת סקריפטים (קוד) פשוטים בbatch.
- למדנו בהרצאה על המון חומר פרקטי, וזה דורש המון תרגול. שחקו עם הפקודות שלמדנו, והתנסו איתם.