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

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید


توزیع گنو/لینوکس اوبونتو ۲۰ ساله شد 🎉

نویسنده موضوع: { حل شد } این دستور جایگذین alias کار نمیکند. { حل شد }  (دفعات بازدید: 1326 بار)

0 کاربر و 3 مهمان درحال مشاهده موضوع.

آفلاین alieblice

  • High Hero Member
  • *
  • ارسال: 1275
سلام دوستان

تو کتاب LPIC-1_In_Nutshell_Oreilly_Edition3.pdf بخش شل اسکریپتینگش یک مثال زده هر کار می کنم کار نمیکنه . صفحه 260

گفته اینو به جایه دستور alias میشه استفاده کرد:

$ lsps () { ls -l; ps; }
ولی این ارور رو میده :
bash: syntax error near unexpected token `('
پیشاپیش ممنون
« آخرین ویرایش: 25 شهریور 1391، 06:56 ب‌ظ توسط alieblice »

آفلاین nixoeen

  • ناظر انجمن
  • *
  • ارسال: 4872
  • جنسیت : پسر
  • masoft قدیم
پاسخ : این دستور جایگذین alias کار نمیکند.
« پاسخ #1 : 25 شهریور 1391، 05:51 ب‌ظ »
اون علامت $ جزئی از دستور نیست و نباید بنویسیدش!

آفلاین alieblice

  • High Hero Member
  • *
  • ارسال: 1275
پاسخ : این دستور جایگذین alias کار نمیکند.
« پاسخ #2 : 25 شهریور 1391، 06:15 ب‌ظ »
ممنون بابت پاسخ.
عجب اشتباه تابلویی من کردم  ](*,). همین چند روز پیش یکی دیگم این اشتباه رو کرده بود من خودم همین حرفه شما بش زدم . باز الان خودم اون اشتباه رو کردم . جالبه.

حالا یک سوال دیگه .
همین دستور رو به صورت چند خطی هم میشه نوشت مثلا مثل این :

$lsps () {
>ls -l $1
>ps aux | grep `/bin/basename $1`
>}

حالا تو ترمینال چه جوری باید چند خطی بنویسم ؟ واردش میشم ولی ازش خارج نمیتونم بشم .

آفلاین doomhammer65ir

  • High Hero Member
  • *
  • ارسال: 1572
  • جنسیت : پسر
    • IRAN Backup
پاسخ : این دستور جایگذین alias کار نمیکند.
« پاسخ #3 : 25 شهریور 1391، 06:50 ب‌ظ »
اگر بخوای یک فرمانو تو چند خط بنویسی باید به آغاز و پایان فرمان دقت کنی
مثلا یک حلقه توی چند خط :for line in `cat txt`
do
folan
folan
folan
done
درست جاهایی که من اینتر کردم شما هم تو خط فرمان اینتر بزن
خط فرمان به کلید واژه ها حساس هست . مثلا در نمونه بالا به for , do , done
تو بخش foilan ها هم هر جا اینتر کنی یک فرمان جدا شمرده میشه

آفلاین alieblice

  • High Hero Member
  • *
  • ارسال: 1275
پاسخ : این دستور جایگذین alias کار نمیکند.
« پاسخ #4 : 25 شهریور 1391، 06:55 ب‌ظ »
از همه دوستان واقعا ممنون . مشکل حل شد . پس علامت هایه < هم مثله علامت $ نباید بزاریم.

پست رو حل شد زدم.

آفلاین nixoeen

  • ناظر انجمن
  • *
  • ارسال: 4872
  • جنسیت : پسر
  • masoft قدیم
پاسخ : این دستور جایگذین alias کار نمیکند.
« پاسخ #5 : 25 شهریور 1391، 10:41 ب‌ظ »
همین دستور رو به صورت چند خطی هم میشه نوشت مثلا مثل این :
$lsps () {
>ls -l $1
>ps aux | grep `/bin/basename $1`
>}

به همین طریق که مثال زدی می‌تونی چند خطی هم بنویسی، فقط اون $ و < رو دوباره نباید بنویسی!