انجمن‌های فارسی اوبونتو

تازه کار => انجمن تازه‌کاران => نویسنده: baharebarfi در 12 اردیبهشت 1392، 04:06 ب‌ظ

عنوان: ممنون میشم اگه جواب منو بدین.shellscript
ارسال شده توسط: baharebarfi در 12 اردیبهشت 1392، 04:06 ب‌ظ
   یک shelscript بنویسید که نام یک فایل و یک کاراکتر را دریافت کند و کارهای زیر را انجام دهد:
•   اگر کاراکتر “r” باشد، مجوز خواندن را به فایل اضافه کند.
•   اگر کاراکتر “w” باشد، مجوز نوشتن را به فایل اضافه کند.
•   اگر کاراکتر “x” باشد، مجوز اجرا را به فایل اضافه کند.
•   در غیر این صورت پیامی مبنی بر واردکردن کاراکترهای مناسب را چاپ کند.
   برنامه بالا را با استفاده از حلقه for برای 5 فایل تکرار کنید
عنوان: پاسخ : ممنون میشم اگه جواب منو بدین.shellscript
ارسال شده توسط: سلمان م. در 12 اردیبهشت 1392، 04:51 ب‌ظ
شما تا چه مرحله‌ای پیش رفتید و کجاش مشکل دارید؟
عنوان: پاسخ : ممنون میشم اگه جواب منو بدین.shellscript
ارسال شده توسط: baharebarfi در 12 اردیبهشت 1392، 05:20 ب‌ظ
سلام. سلمان جان من قسمت اولشو فقط بلدم :(
عنوان: پاسخ : ممنون میشم اگه جواب منو بدین.shellscript
ارسال شده توسط: Matrix.1372 در 12 اردیبهشت 1392، 05:23 ب‌ظ
هرقدرش رو که بلد هستین اینجا بذارین برای ما توی تگ کد (علامت # توی ادیتور)
عنوان: پاسخ : ممنون میشم اگه جواب منو بدین.shellscript
ارسال شده توسط: baharebarfi در 12 اردیبهشت 1392، 05:32 ب‌ظ
Char=""
echo -n "Enter a one character : "
read file
و واسه گرفتن نام فایل:
echo -n "Enter file name : "
read file
عنوان: پاسخ : لطفا اگه میشه جواب منو بدین.shellscript
ارسال شده توسط: vandu در 12 اردیبهشت 1392، 08:09 ب‌ظ
دستور if‌ رو اینجوری می نویسن:
if [condition] then
statements
else
statements
fi
اگرم بخواید case رو استفاده کنید اینجوریه:
case expression in
pattern1 )
statements ;;
pattern2 )
statements ;;
    ...
esac
پارامترهای خط فرمان هم به شکل ‎$1‎ و ‎$2 و ... شناخته میشه.
تساوی رو هم میشه با eq یا == چک کرد:
if [$1 eq "x"]
یا
if ["$1" == "x"]
پیغام رو هم با echo چاپ می کنن:
echo "message"مجوز رو هم با chmod عوض می کنن
chmod +x filenameحلقه for هم اینجوری نوشته میشه:
for i in `seq start end`
do
statement
done
حالا خودتون بنویسید و از نوشتنش لذت ببرید.