با سلام خدمت دوستان . در این آموزش قصد داریم با نحوه ی ساده ی نوشتن help برای اسکریپت های بش آشنا بشیم . فرض می کنیم که اسکریپت ما از دو تابع اصلی تشکل شده است و قرار است که این دو تابع ( که در واقع دو کار مجزا از هم را انجام می دهند ) , با سویچ هایی خاص فراخوانی و اجرا شوند .
طبیعتا اگر کاربر به غیر از سویچ های تعریف شده را استفاده کند , اسکریپت کار نخواهد کرد و جوابی در خروجی چاپ نکند . برای حل این مشکل و هدایت کردن کاربر به سمت یک help و نحوه ی استفاده , می توان اسکریپت خود را به شکل زیر باز نویسی کرد :
1. ابتدا تابعی به نام help به شکل زیر ایجاد کرده ( به عنوان مثال ) :
function_help () { echo "Usage: OSLearn_program [-A | -B]" echo ' -A run function A' echo ' -B run function B' echo '' echo 'config file : /etc/OSLearn_program/config.text' }
2. سپس اجرای برنامه را به صورت زیر به کنترل در می آوریم :
... if [ "$1" = "-A" ] ; then function_A elif [ "$1" = "-B" ] ; then function_B else function_help fi ...
توضیحات :
1. از شرط برای اجرای به موقع تابع ها استفاده کردیم , به این صورت که اگر اولین سویچ برابر با A بود تابع A اجرا شود . ( خط دوم )
2. اگر اولین سویچ برابر با B بود آنگاه تابع B اجرا شود . ( خط چهارم )
3. و در آخر اگر به جز دو مورد بالا چیزی استفاده شد و یا حتی اسکریپت بدون هیچ سویچی به اجرا در آمد , تابع help اجرا شود . ( خط هفتم )
نکته : به جای استفاده از if می توان قسمت دوم را به شکل زیر باز نوسی کرد :
... case $1 in -A) function_A ;; -B) function_B ;; *) function_help ;; esac ...
در نهایت اگر برنامه را اجرا کنیم با خروجی زیر مواجه خواهیم شد :
منبع : او اس لرن دات آی آر | http://OSLearn.ir
نویسنده : E2MA3N
از این مطلب راضی هستید ؟ می خواهید به سایت کمک کنید ؟ رضایت خودتون رو با دونیت به ما اعلام کنید . برای دونیت روی خرید کلیک کنید . با تشکر