Bash امکان توسعه الگوها و کاراکترها را فراهم میکند تا قبل از اجرای دستورات به مقادیر واقعی تبدیل شوند. کاربران میتوانند با کمک این مکانیزمها مسیرها، متغیرها، محاسبات، خروجی دستورها و نحوه نمایش متن را کنترل کنند. این مقاله مراحل مختلف توسعه در Bash را بررسی میکند.
echo *تمام فایلهای دایرکتوری جاری را نمایش میدهد.
echo D*فایلهایی که با D شروع میشوند را لیست میکند.
echo .[!.]*فقط فایلهای مخفی را بدون نمایش . و .. لیست میکند. روش جایگزین:
ls -Aecho ~دایرکتوری خانگی کاربر فعلی را نمایش میدهد.
echo ~usernameدایرکتوری خانگی کاربر دیگر را نمایش میدهد.
echo $((2 + 2))محاسبه عددی ساده.
echo $(((5**2) * 3))نمایش حاصل توان و ضرب: ۷۵
echo Front-{A,B,C}-Backخروجی: Front-A-Back Front-B-Back Front-C-Back
mkdir {2007..2009}-{01..12}ایجاد پوشههایی مانند 2007-01 تا 2009-12
echo $USERنمایش نام کاربر فعلی.
printenv | lessنمایش لیست تمام متغیرهای محیطی.
echo $(ls)قرار دادن خروجی دستور داخل دستور دیگر.
ls -l $(which cp)نمایش جزئیات cp
echo text ~/*.txt {a,b} $(echo foo) $((2+2)) $USERecho "text ~/*.txt {a,b} $(echo foo) $((2+2)) $USER"برخی توسعهها حفظ میشوند اما brace و مسیر فعال نمیشوند.
echo 'text ~/*.txt {a,b} $(echo foo) $((2+2)) $USER'همهٔ توسعهها غیرفعال شده و متن دقیقاً همانطور نمایش داده میشود.
echo "Your balance is: \$5.00"جلوگیری از تفسیر نادرست $5 به عنوان متغیر.
mv bad\&filename good_filenameاستفاده از \ برای جلوگیری از رفتار خاص &
| کد | کاربرد |
|---|---|
| \a | بوق |
| \n | سطر جدید |
| \t | تب |
| \r | بازگشت به ابتدای سطر |
| \b | بکاسپیس |
sleep 10; echo -e "Time's up\a"sleep 10; echo "Time's up" $'\a'توسعهها، نقلقولها و روشهای جایگزینی در Bash ابزارهای بنیادی برای کنترل اجرای دستورات و پردازش دادهها هستند. با درک نحوه تفسیر متغیرها، خروجی دستورات، الگوها و کاراکترهای خاص، میتوان اسکریپتهای هوشمند، خروجیهای دقیق و رفتار دقیق ترمینال را طراحی کرد.