راهنمای آموزشی اسکریپت نویسی - مقدماتی

لطفا برای بهتر دیدن صفحه از firefox استفاده کنید
Bash Guide for Beginners Machtelt Garrels

راهنمای Bash برای نوآموزان

فصل ۲ : نوشتن واشکالزدایی اسکریپت‌ها »
«  اشکالزدایی اسکریپت‌های Bash

مبانی اسکریپت

کدام شل اسکریپت را اجرا خواهد نمود؟

موقعی که اسکریپت در یک زیرپوسته اجرا می‌شود ، شما باید شل اجرا کننده اسکریپت را تعیین کنید. ممکن است اسکریپت را در یک شل که پیش فرض سیستم شما نیست نوشته اید، بنابراین دستوراتی که شما وارد کرده‌اید، موقعی که در شل اشتباه اجرا گردند، ممکن است منجر به خطا گردند.

اولین سطر اسکریپت نوع شل اجرا کننده را تعیین می‌کند. دو کاراکتر اول این سطر باید ‎ #!‎ ،باشد، سپس مسیر پوسته‌ای که باید دستورات بعدی را تفسیر کند، می‌آید. سطرهای خالی نیز سطر محسوب می‌شوند، بنابراین اسکریپت نباید بایک سطر خالی شروع گردد.

در طول این دوره، تمام اسکریپت‌ها با این سطر شروع خواهند شد

#!/bin/bash

همان طور که قبلاً اشاره شد، این سطر، اشاره به آن می‌کند که Bash قابل اجرا، می‌تواند در ‎/bin‎ یافت شود.

افزودن توضیحات

باید بر این واقعیت واقف باشید که، ممکن است شما تنها فردی که کدهایتان را می‌خواند، نباشید. تعداد زیادی از کاربران و مدیران سیستم اسکریپ‌هایی را اجرا می‌کنند که توسط دیگران نوشته شده‌اند. اگر آن‌ها بخواهند از چگونگی کار شما آگاه گردند، توضیحات برای روشن کردن خواننده‌ها سودمند است .

توضیحات همچنین امور خودتان را آسان‌تر می‌کند . در نظر بگیرید که شما مقدار زیادی از صفحه‌های مستندات را برای رسیدن به نتیجه خاصی از یک فرمان، که می‌خواهید در اسکریپت خود استفاده کنید، خوانده‌اید. اگر بعد از چند ماه یا هفته نیاز به تغییر اسکریپت داشته باشید، بدون توضیح آن که چه کرده‌اید، چگونه و یا چرا چنین کرده‌اید، به خاطرنمی‌آورید که چطور کار می‌کند.

از مثال ‎script1.sh‎ یک کپی به نام ‎commented-script1.sh‎ بگیرید وآن را به صورت زیر، که ما طوری ویرایش نموده‌ایم، که در آن، توضیحات، عملکرد اسکریپت را منعکس می‌کنند، اصلاح نمایید.شل از هر چه پس از علامت # در یک سطر باشد صرف نظر می‌کند و فقط موقع باز کردن فایل اسکریپت شل قابل رؤیت می‌باشد :

#!/bin/bash
# This script clears the terminal, displays a greeting and gives information
# about currently connected users.  The two example variables are set and displayed.

clear				# clear terminal window

echo "The script starts now."

echo "Hi, $USER!"		# dollar sign is used to get content of variable
echo

echo "I will now fetch you a list of connected users:"
echo							
w				# show who is logged on and
echo				# what they are doing

echo "I'm setting two variables now."
COLOUR="black"					# set a local shell variable
VALUE="9"					# set a local shell variable
echo "This is a string: $COLOUR"		# display content of variable 
echo "And this is a number: $VALUE"		# display content of variable
echo

echo "I'm giving you back your prompt now."
echo

در یک اسکریپت آراسته، سطرهای اول به طور معمول توضیح می‌دهند، از اسکریپت چه انتظار داریم. سپس در صورت لزوم، هر قطعه بزرگ از دستورات برای وضوح هدف آن بخش، توضیح داده می‌شود. اسکریپت‌های init لینوکس در دایرکتوری init.d سیتم شما، به عنوان یک نمونه، معمولاً خوب توضیح داده شده‌اند، چون باید قابل خواندن و ویرایش نمودن توسط کسی که لینوکس را راه‌اندازی می‌کند، باشند.

فصل ۲ : نوشتن واشکالزدایی اسکریپت‌ها »
« اشکالزدایی اسکریپت‌های Bash
ترجمه محمود پهلوانی