קובץ אצווה
קובץ אצווה (batch file) הוא קובץ המכיל שורות טקסט של פקודות למערכת ההפעלה, לשם הפעלתן של תוכניות שונות.
קובצי אצווה מכילים לעיתים קרובות אותן פקודות שניתן לתת במעטפת הפקודות של מערכת ההפעלה (כמו במערכת DOS, ראו להלן) אולם דבר זה לא הכרחי. גם במקרים כאלו לרוב יש פקודות שמשתמשים בהן כמעט אך ורק בקובצי אצווה (למשל goto).
קובצי אצווה בחלונות ו-MS DOS
במערכת ההפעלה MS-DOS, קובצי האצווה נשמרים עם סיומת BAT ובחלונות הנגזרות מחלונות NT ניתן להשתמש גם בסיומת CMD. בהפעלתם תחת חלונות נפתח חלון דוס שמבצע את קובץ האצווה.
תוכנית לדוגמה
תוכנית המדפיסה את המחרוזת "Hello World!" לפלט הסטנדרטי:
@echo off echo Hello World! pause
הסבר: הפקודה echo off מסמנת שהפקודות לא יוצגו, וסימן @ שלידה מסמן שגם את השורה הזו המסך לא יציג. הפקודה echo מדפיסה למסך את הטקסט שאחריה. הפקודה pause משאירה את המסך פתוח עד שהמשתמש ילחץ על כפתור במקלדת, ללא הפקודה בסוף הדפסת המשפט התוכנית הייתה נסגרת.
דוגמה פשוטה לשימוש בחיבורי אינטרנט
netstat -a
הסבר: קטע הקוד הנ"ל מציג פקודה הנקראת Netstat, המציגה את כל החיבורים הנוכחיים למחשב שבו היא מופעלת. התוסף -a אומר לפונקציה זו להדפיס על המסך רשימה של כל החיבורים למחשב בשמם הדינאמי (DNS). כדי להציג את כתובת פרוטוקול האינטרנט (IP) של כל חיבור, יש לשלוח ping לכתובת זו. ping היא מין מחרוזת מידע ה"שואלת" את השרת על מצבו, כשהשרת "עונה" בחזרה כתובת הIP שלו חוזרת איתו.
דוגמה לשליחת ping
ping [[127.0.0.1]]
הסבר: הפקודה ping שולחת את חבילת המידע לכתובת הנתונה לה (כתובת IP או DNS).
קובצי אצווה במערכת הפעלה Unix או Linux
במערכות הפעלה דמויות יוניקס, ליבת המערכת מזהה סוג של תוכנית להרצה לפי ההתחלה שלה. כאשר קובץ להרצה מתחיל בתווים „#!״, הליבה מתייחסת אליו כקובץ אצווה שמורץ על ידי המפרש כתוב בהמשך השורה הראשונה בקובץ.
לדוגמה, קובץ שמתחיל בשורה #!/bin/sh יורץ על ידי /bin/sh, כלומר, על ידי Bourne Shell או מפרש תואם. דוגמה לתוכנית פשוטה שמסדר את כל השורות בקובץ לפי סדר אלפבית ושולח אותם להדפסה במדפסת ברירת מחדל:
#!/bin/sh
cat file.txt | sort | lp
ניתן לכתוב קבצים מסובכים הרבה יותר וליצור אוטומציה של רוטינות הנדרשות לעיתים תכופות.
אפשר להשתמש בכל תוכנית אחרת. לדוגמה, סקריפט פרל פשוט. במקרה הזה מעבירים למפרש של פרל פרמטר נוסף (-w, כדי להפעיל אזהרות:
#! /usr/bin/perl -w
use v5.10;
my @places = qw/world earth/;
map {say "Hello, $_!"} @places;
במקרים רבים משתמשים כ„מפרש״ בתוכנית env שנועדה להריץ תוכנית אחרת עם משתני סביבה שונים אבל כתוצאת לוואי מאפשרת להריץ את המפרש האמיתי מכל נתיב סטנדרטי. לדוגמה, מקובל במקרים רבים להשתמש בשורה הבאה עבור סקריפטי פייתון:
#!/usr/bin/env python
print("Hello!")
המפרש מקבל את שם קובץ הסקריפט כפרמטר ראשון. לדוגמה, הפלט של הסקריפט הבא:
#!/bin/ls -l
# Some other content
הוא מידע מהפקודה ls על קובץ הסקריפט עצמו.
קישורים חיצוניים
- ארז בן-ארי, עסקים און ליין, מי מפחד מתכנות? (1), באתר nrg, 2 במאי 2005
33995971קובץ אצווה