Loading AI tools
מעטפת פקודה למערכות יוניקס מוויקיפדיה, האנציקלופדיה החופשית
באש (באנגלית: Bash) היא מעטפת פקודה למערכות יוניקס, ולמערכות דמויות יוניקס (לדוגמה: גנו/לינוקס) מאת פרויקט גנו. המעטפת פותחה בשנת 1989 על ידי בריאן פוקס, בניצוחו של ריצ'רד סטולמן, כמיזם תוכנה חופשית וכתחליף ל-Bourne Shell, עבור פרויקט גנו. ברוב מערכות גנו/לינוקס, מופצת באש כברירת מחדל ומהווה בסיס חיוני למערכת (יחד עם כלים בסיסיים נוספים, גם כן מבית גנו).
הדגמה של הרצת פקודות במעטפת Bash | |
מפתח | פרויקט גנו |
---|---|
מחזור חיים | 8 ביוני 1989 – הווה (35 שנים) |
גרסה אחרונה | 5.2.37 (23 בספטמבר 2024) |
מערכת הפעלה | דמויי יוניקס |
נכתבה בשפות | C |
סוג רישיון | GPL גרסה 2+ |
קוד מקור | https://git.savannah.gnu.org/cgit/bash.git |
קטגוריה | מעטפת פקודה |
אתר גנו | |
שם המעטפת נגזר משם המעטפת Bourne shell שהופצה לראשונה בגרסה 7 של מערכת ההפעלה UNIX בשנת 1979. משמעות השם Bash היא ראשי תיבות של Bourne-again shell, כמשחק מילים על Bourne Shell. שם המעטפת בתרגום לעברית: "מעטפת (פקודה) שנולדה מחדש"[1]
תחביר הפקודות של באש הוא הרחבה של Bourne Shell ומציע מספר שיפורים לעומתו. בין השיפורים: עריכת פקודות, הסרת ההגבלה על גודל הזיכרון המוקצה לשמירת היסטוריות הפקודות שבוצעו דרך המעטפת, שליטה בתהליכי משתמש (jobs), כתיבת פונקציות, יצירת קיצורי שם לפקודות מורכבות (aliases), עבודה עם מערכים ללא הגבלת גודל, ביצוע חישובים אריתמטיים מבסיס 2 עד 64, שמירה לזיכרון מחסנית של מסלולים בעץ הקבצים (מנגנון pushd/popd), תמיכה במערכים אסוציאטיביים (מערכים שהגישה אליהם אינה בעזרת אינדקס מספרי; החל מגרסה 4).
המעטפת מופצת גם עם מערכת Mac OS X מבית אפל. ניתן להריץ את המעטפת גם על מערכת ההפעלה Windows מבית מיקרוסופט בעזרת Cygwin, אך המעטפת לא מיועדת לכך. בשנת 2016 מיקרוסופט הוציאה פתרון להרצת המעטפת במערכת ההפעלה חלונות 10 באמצעות כלי ייעודי מתוצרתה שפותח ביחד עם קנוניקל מפיצת Ubuntu[2]. חברת גוגל פיתחה Google Cloud Shell מבוססת דביאן.
בדומה לכל מעטפת פקודה סטנדרטית, גם התחביר של באש מאפשר יצירה של קובצי אצווה. קבצים אלה נקראים Bash Scripts ולהם צורה מובנית כפי שמדגים הסקריפט הבא:
#!/bin/bash
#this line is just a plain comment and will be ignored by the executing shell.
if [ $# -lt 3 ] ; then
echo "I expected at least 3 positional parameters for this script"
exit 1
fi
#loop over all input arguments and print them in order
for x in $* ; do
echo "the next argument is ${x}"
done
#loop over all input argument and print them in order
#but also shift them such that the second argument becomes the first one, etc.
while [ $# -gt 0 ] ; do
echo "the next argument is ${1}"
shift
done
# done, exit script with success code 0.
exit 0
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.