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

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

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




نویسنده موضوع: درباره دستور awk  (دفعات بازدید: 322 بار)

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

آفلاین abdossamad2003

  • Full Member
  • *
  • ارسال: 157
درباره دستور awk
« : 03 اسفند 1399، 12:01 ب‌ظ »
با سلام خدمت دوستان
من یک اسکریپت رو دارم مطالعه می کنم که با csh نوشته شده است. میشه بگید این کد دستوری چه کاری انجام میده

setenv TYPE `echo $cwd | awk -F"_" '{print $NF}'`

آفلاین Dragon-

  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 5125
  • جنسیت : پسر
پاسخ : درباره دستور awk
« پاسخ #1 : 03 اسفند 1399، 12:42 ب‌ظ »
دستور setenv توی csh یه متغیر محیطی ایجاد میکنه. و باید به این شکل استفاده بشه.
setenv VARIABLENAME VALUEکه اولی اسم متغیر هست و دومی مقدارش.

echo رو می‌دونید چی کار میکنه. داره میگه متغیر cwd رو بخون و | هم میگه خروجی رو بده به دستور بعد.

awk یه دستور برای کار با متن‌ها.
چیزی که جلوی awk نوشته شده میگه که _ رو جدا کننده‌ی قسمت‌ها به حساب بیار و آخرین قسمت متنی که داده شده را نمایش بده. $NF یعنی آخرین قسمت و print هم که واضحه.

پس کاری که این می‌کنه اینه که اول میگه یه متغیر به اسم TYPE درست کن و برای مقدارش اول متغیر cwd رو بخون و بعد بده به awk و awk هم _ رو به عنوان جدا کننده قسمت‌ها در نظر میگیره و آخرین قسمت رو بر‌می‌گردونه، که این آخرین قسمت به عنوان مقدار داخل متغیر  TYPE ذخیره میشه.
میدونید که زکات علم نشر آن است