Bash script یا اسکریپت bash یک برنامه متنی ساده مبتنی بر خط فرمان است که به شما اجازه میدهد تا دستورات را به ترتیب توسط مفسر Bash اجرا کنید. از بش اسکریپت برای خودکارسازی وظایف روزمره مانند پشتیبانگیری از فایلها، نصب پکیجهای مورد نیاز روی سرورهای مختلف، عیبیابی و… استفاده میشود. در صورتی که شما هم پروژه ای در زمینه Bash script دارید، میتوانید از برنامه نویسان کارلنسر کمک بگیرید. برای شروع، پروژه خود را در فرم همین صفحه ثبت و منتظر پیشنهادات متخصصان باشید.
بیشتر بدانید
مراحل ثبت سفارش
اسکریپت نویسی Bash Script
۱. ثبت پروژه
ثبت درخواست خود در قالب پروژه با بودجه و زمان دلخواه
۲. انتخاب متخصص
انتخاب متخصص (فریلنسر) از بین پیشنهادهای دریافتی
۳. انجام پروژه
ارتباط با متخصص و نظارت بر روند کار در طول انجام پروژه
۴. پرداخت امن
آزاد کردن مبلغ برای متخصص پس از تحویل کار و تایید شما
از میان برترین فریلنسرهای bash script به پروژه خود دعوت کنید.
Ali.N
N/A
تهران
مهارتها:
bash script
css
html
linux
python
django
database
django rest
react native
جاوا اسکریپت (Javascript)
مشاهده پروفایل
دعوت به همکاری
Mohammad.S
N/A
تهران
مهارتها:
bash script
ccna
voip
linux
mtcna
cloud
python
network+
veeambackup
مجازی سازی (Virtualization)
مشاهده پروفایل
دعوت به همکاری
MohammadAmin.T
N/A
مشهد
مهارتها:
bash script
owasp
python
apache
linux server
nginx server
اسکریپت نویسی
ساخت ربات تلگرام
جاوا اسکریپت (Javascript)
مشاهده پروفایل
دعوت به همکاری
Ashkan.G
۳/۵
شیراز
مهارتها:
bash script
linux
excel
وردپرس
server
python
طراحی سایت
برنامه نویسی C
خدمات امنیت سایت
سرور مجازی (وی پی اس) vps
مشاهده پروفایل
دعوت به همکاری
Ali.B
۵/۵
سهند
مهارتها:
bash script
css
php
html
pyqt
python
vscode
pyrogram
برنامه نویسی
مشاهده پروفایل
دعوت به همکاری
Saeed.M
N/A
تهران
مهارتها:
bash script
c++
perl
python
لینوکس
طراحی سایت
برنامه نویسی
هک و تست نفوذ
برنامه نویسی C
مشاهده پروفایل
دعوت به همکاری
Vahid.G
۵/۵
تهران
مهارتها:
bash script
linux
python
telegram bot
telegram api
مای اس کیوال
زبان برنامه نویسی SQL
جاوا اسکریپت (Javascript)
مشاهده پروفایل
دعوت به همکاری
Sobhan.M
N/A
مشهد
مهارتها:
bash script
go
ccna
طراحی سایت
برنامه نویسی
cybersecurity
خدمات امنیت سایت
python programing
برنامه نویسی فول استک
طراحی وب سایت اختصاصی
مشاهده پروفایل
دعوت به همکاری
Mohammad.M
N/A
بندرانزلی
مهارتها:
bash script
seo
css
html
طراحی سایت
طراحی سایت فروشگاهی
طراحی وب سایت اختصاصی
جاوا اسکریپت (Javascript)
سرور مجازی (وی پی اس) vps
مشاهده پروفایل
دعوت به همکاری
Ali.M
N/A
کرج
مهارتها:
bash script
سرور
python
هاستینگ
وب سرویس
سرور لینوکس
کانفیگ سرور
تست نفوذ وب
خدمات امنیت و ssl سایت
سرور مجازی (وی پی اس) vps
مشاهده پروفایل
دعوت به همکاری
MohammadReza.Kh
N/A
مشهد
مهارتها:
rails
figma
vue.js
jquery
node js
react js
tailwind
material design
جاوا اسکریپت (Javascript)
مشاهده پروفایل
دعوت به همکاری
Mahdi.S
N/A
تهران
مهارتها:
bash script
git
ccna
lpic1
lpic2
gitlab
docker
jenkins
ansible
kubernetes
مشاهده پروفایل
دعوت به همکاری
سفارش انجام پروژه bashscript
اسکریپت shell/bash چیست؟
اسکریپت شل یا بش اسکریپت (Bash Script)، یک فایل متنی است. این فایل متنی دستوراتی را برای اجرای خودکار وظایف در یک سیستمعامل مبتنی بر یونیکس مانند لینوکس یا macOS در خود جای داده است. این دستورات هر کاری را که شما میتوانید از طریق خط فرمان انجام دهید را پوشش میدهند، از سادهترین کارها مانند کپی کردن فایلها تا پیچیدهترین عملیات مدیریت سیستم. به زبانی سادهتر، اسکریپت شل به شما اجازه میدهد تا یک سری دستورات را به صورت یکجا بنویسید؛ پس از آن یک دستور واحد را اجرا کرده تا همه آنها را به طور خودکار اجرا شوند.برای اینکه بدانید بش اسکریپت چیست باید از کاربردهای بش اسکریپت آگاه شوید. از جمله این کاربردها، خودکارسازی وظایف است. تکرار کارهای تکراری معمولا خستهکننده است که با استفاده از اسکریپت شل، به صورت خودکار انجام میشوند. با اسکریپت شل، بهرهوری هم افزایش پیدا میکند. با نوشتن اسکریپت میتوانید تمام وظایف پیچیده را به صورت کاملا ساده و سریع انجام دهید. سیستم هم بهتر مدیریت میشود. اسکریپت شل معمولا برای انجام عملیات نگهداری سیستم، پشتیبانگیری و نظارت بر سیستم بسیار مفید است. اسکریپت شل را همچنین میتوان یک نقطه شروع عالی برای یادگیری برنامهنویسی دانست.اسکریپت شل از شیبانگ (Shebang)، دستورات و کامنتها تشکیل شده است. شیبانگ اولین خط اسکریپت است که مشخص میکند کدام مفسر (interpreter) باید برای اجرای اسکریپت استفاده شود. به طور معمول به صورت #! /bin/bash است. دستورات شل هم شامل آن فرمانهایی است که میخواهید اجرا شوند پس خط به خط در اسکریپت نوشته میشوند. کامنتها با علامت # شروع میشوند و از آنها برای توضیح کد استفاده میکنند.زمانی که میخواهید یک کار تکراری را به صورت خودکار انجام دهید، زمانی که قصد دارید چندین دستور را به صورت یکجا اجرا کنید، زمانی یک وظیفه پیچیده را به بخشهای کوچکتر تقسیم میکنید و یا زمانی که میخواهید یک برنامه ساده بنویسید میتوانید از Bash script استفاده کنید. مثالی ساده از دستور bash در لینوکس:#!/bin/bash# این اسکریپت یک پیام خوش آمدگویی چاپ میکند.echo \"سلام! به دنیای اسکریپتنویسی خوش آمدید.\"
مزایای استفاده از اسکریپت شل
- بش اسکریپت انعطافپذیر است؛ با استفاده از آن میتوانید اسکریپتهای پیچیدهای برای انجام وظایف مختلف بنویسید.
- اسکریپت شل قابلحمل است. این اسکریپتهای شل به طور معمول در اکثر سیستمهای یونیکس قابلیت اجرا دارند.
- Bash script دارای ابزارهای قدرتمندی برای پردازش متن، مدیریت فایلها و کنترل جریان است.
- جامعهای بزرگ از کاربران شل وجود دارد که میتوانید از تجربیات تمام آن افراد بهرهمند شوید.
پیادهسازیهای مختلف shell چیست؟
شل (Shell) یک رابط خط فرمان است که به شما اجازه میدهد با سیستم عامل تعامل داشته باشید. شلها انواع مختلف با ویژگیها و کاربردهای خاص خود هستند. در ادامه برخی از مهمترین پیادهسازیهای شل را بررسی میکنیم:
- شل بورن (Bourne Shell): اولین شل استاندارد برای سیستمعامل یونیکس بود و پایه و اساس بسیاری از شلهای دیگر محسوب میشود. از ویژگیهای آن ساده و قدرتمند بودن است. شل بورن برای کارهای روزمره نیز مناسب است.
- شل بش (Bash): مخفف Bourne Again Shell است و یک نسخه بهبودیافته از شل بورن است. این شل، پرکاربردترین در سیستمهای لینوکس و macOS است؛ همچنین قابلیتهای پیشرفتهتر از شل بورن، مانند تاریخچه فرمانها، ویرایش خط فرمان، و کنترل جریان پیچیدهتر را دارد.
- شل سی (C Shell): شلی است که سینتکسی شبیه به زبان برنامهنویسی C دارد. این شل برای برنامهنویسان C مناسبتر است؛ اما به طور کلی کمتر از بش استفاده میشود.
- شل کورن (Korn Shell): شلی است که برای برنامهنویسی تعاملی و نوشتن اسکریپتهای پیچیده طراحی شده است. دارای ویژگیهای پیشرفتهای مانند آرایهها، توابع، و کنترل خطای قوی است.
- شل Z (Z Shell): شلی است که بر اساس شل بش ساخته شده و ویژگیهای اضافی بسیاری دارد. از ویژگیهای آن میتوان به تکمیل خودکار قدرتمند آن، ماکروها، و قابلیت سفارشیسازی بالا اشاره کرد.
- شل فیش (Fish Shell): شلی مدرن است که بر روی تجربه کاربری متمرکز است. تکمیل خودکار هوشمند، سینتکس ساده، و قابلیتهای سفارشیسازی بالا از مشخصههای آن است.
میان سینتکس، ویژگی، کارایی و محبوبیت هر شل تفاوتهایی وجود دارد. هر شل سینتکس خاص خود را دارد، مجموعه ویژگیهای منحصربهفردی را ارائه میدهد، برخی سریعتر از بقیه هستند و محبوبیت هر شل در بین کاربران متفاوت است. به همین دلیل انتخاب شل مناسب به نیازها و ترجیحات شما بستگی دارد. اگر به دنبال یک شل ساده و قدرتمند هستید، بش انتخاب خوبی است. اگر به دنبال یک شل با قابلیتهای پیشرفته و سفارشیسازی بالا هستید، zsh یا fish گزینههای مناسبی هستند.
چگونه یک اسکریپت shell ایجاد کنیم؟
اسکریپت شل به سیستم عامل میگوید چه کارهایی را انجام دهد. این اسکریپتها برای خودکارسازی وظایف تکراری بسیار مفید هستند. مراحل ایجاد یک اسکریپت شل یا Bash script به شرح زیر است:
1.یک فایل جدید ایجاد کنید را به صورت زیر ایجاد کنید:
- از یک ویرایشگر متن ساده مانند vim, nano یا gedit استفاده کنید.
- یک فایل با پسوند .sh ایجاد کنید؛ به عنوان مثال my_script.sh.
2.خط شبنگ (Shebang) را به صورت زیر اضافه کنید. در اولین خط فایل، مسیر مفسر پوسته را مشخص کنید. معمولاً برای Bash، این خط به صورت زیر است:
#!/bin/bash
- این خط به سیستم عامل میگوید که این فایل یک اسکریپت Bash است و باید با مفسر Bash اجرا شود.
3.دستورات خود را به همان ترتیبی که میخواهید اجرا شوند، بنویسید.
- هر دستور در یک خط جدید قرار میگیرد.
- برای مثال، برای اجرای عبارت \"Hello, World!\"، میتوانید از دستور echo استفاده کنید:
echo "Hello, World!"
4.اکنون نوبت به اجرای اسکریپت است:
- ابتدا مجوز اجرایی را مانند زیر به فایل بدهید:
chmod +x my_script.sh
- اکنون فایل را مانند زیر اجرا کنید:
./my_script.sh
این مثال، یک نمونه از برنامهنویسی bash بود.
چند مثال برای بش اسکریپتینگ
اسکریپتنویسی Bash یک ابزار قدرتمند برای خودکارسازی وظایف در سیستمعاملهای لینوکس و یونیکس است. با استفاده از اسکریپتهای Bash میتوانید تکرار کارهای تکراری را کاهش داده و بهرهوری خود را افزایش دهید. برای فهم بهتر اینکه بش اسکریپت چیست در ادامه چند مثال کاربردی همراه با توضیحات کامل برای شما آورده شده است:
1- نمونه اسکریپتنویسی خوشامدگویی در Bash
یک فایل جدید با پسوند .sh ایجاد کنید.
داخل این فایل، کد زیر را وارد کنید:
#!/bin/bash
echo "خوش آمدید به سیستم!"
echo "امروز روز خوبی است."
user=$(whoami)
echo "کاربر گرامی:$user"
Date
برای اجرای اسکریپت، ابتدا باید به آن مجوز اجرایی بدهید:
chmod +x welcome.sh
سپس با دستور زیر اسکریپت را اجرا کنید:
./welcome.sh
2-دستور bash در لینوکس برای نمایش اطلاعات سیستم در Bash
#!/bin/bash
# اطلاعات سیستم عامل
echo \"سیستم عامل: $(uname -s)\"
# نام میزبان
echo \"نام میزبان: $(hostname)\"
# نسخه هسته
echo "نسخه هسته: $(uname -r)"
# معماری سیستم
echo "معماری سیستم: $(uname -m)"
# اطلاعات توزیع
echo "توزیع: $(cat /etc/os-release | grep ID= | cut -d= -f2)"
# اطلاعات کاربر
echo "کاربر فعلی: $(whoami)"
# اطلاعات تاریخ و زمان
echo "تاریخ و زمان فعلی: $(date)"
# اطلاعات فضای دیسک
df -h
# اطلاعات استفاده از حافظه
free -m
3-نمونه اسکریپتنویسی برای ایجاد فایل جدید
برای برنامهنویسی bash، یک فایل متنی جدید با پسوند .sh ایجاد کنید. مثلاً create_file.sh.
داخل فایل، کد زیر را بنویسید:
#!/bin/bash
touch newfile.txt
برای اجرای اسکریپت، ابتدا باید به آن مجوز اجرایی بدهید:
chmod +x create_file.sh
سپس با دستور زیر اسکریپت را اجرا کنید:
./create_file.sh
4-نوشتن اسکریپت بش برای ایجاد فایل با محتوا
برای ایجاد یک فایل با محتوای مشخص، میتوانید از دستور echo استفاده کنید و خروجی آن را به یک فایل هدایت کنید:
#!/bin/bash
echo "این محتویات یک فایل جدید است." > newfile.txt
5-نوشتن اسکریپت بش برای ایجاد چندین فایل
برای ایجاد چندین فایل با نامهای مختلف، میتوانید از یک حلقه for استفاده کنید:
#!/bin/bash
for i in {1..5}; do
touch file_
done