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

کمک و پشتیبانی => انجمن عمومی => نویسنده: سودو. در 20 بهمن 1400، 12:56 ب‌ظ

عنوان: یک سوال در مورد function & awk
ارسال شده توسط: سودو. در 20 بهمن 1400، 12:56 ب‌ظ
به تازگی دارم نوشتن فانکشن رو یاد میگیرم در بش ، اما یه سوال برام پیش اومده …

pr() { chmod u="$1" "$2" ; }

اینجا میخوام به جای $2 بگم از ارگومان دوم تا اخر اما با روش زیر که نشد !

pr() { chmod u="$1" "$2-$NF" ; }

چجوری اینکارو بکنم ؟

و اینکه به awk چجوری بگم همینو ؟

ls -AgGhX --group-directories-first --color=always "$@" | tail +2 | awk '{print $1,$3,$7}' | column -t

در اینجا هم میخوام به awk بگم که از بخش هفتم تا اخرین همشون !

با روش پایین هم نشد !

ls -AgGhX --group-directories-first --color=always "$@" | tail +2 | awk '{print $1,$3,$7-$NF}' | column -t

اینجا چیکار کنم ؟
عنوان: پاسخ : یک سوال در مورد function & awk
ارسال شده توسط: دانیال بهزادی در 20 بهمن 1400، 03:44 ب‌ظ
برای مورد نخست می‌تونی از این حالت استفاده کنی:
pr() { chmod u=$1 ${@: 2} ; }
عنوان: پاسخ : یک سوال در مورد function & awk
ارسال شده توسط: سودو. در 20 بهمن 1400، 03:47 ب‌ظ
برای مورد نخست می‌تونی از این حالت استفاده کنی:
pr() { chmod u=$1 ${@: 2} ; }
میشه اگه زحمتی نیست ماهی گیری رو هم یادم بدین و فقط ماهی رو در اختیارم نزارین ؟ 😅
اینجا چیکار کردین حداقل بفهممش بعدا بتونم استفاده کنم جای دیگه
عنوان: پاسخ : یک سوال در مورد function & awk
ارسال شده توسط: دانیال بهزادی در 20 بهمن 1400، 03:49 ب‌ظ
$@
یعنی همهٔ آرگومان‌ها.
${@: 2}
یعنی از آرکومان دوم به بعد.

برای تمرین، مقدار این رو حدس بزن:
${@: 0}
عنوان: پاسخ : یک سوال در مورد function & awk
ارسال شده توسط: سودو. در 20 بهمن 1400، 03:50 ب‌ظ
$@
یعنی همهٔ آرگومان‌ها.
${@: 2}
یعنی از آرکومان دوم به بعد.
جالب بود ! در awk کار نمیکنه ؟
عنوان: پاسخ : یک سوال در مورد function & awk
ارسال شده توسط: سودو. در 20 بهمن 1400، 03:51 ب‌ظ
نقل‌قول
برای تمرین، مقدار این رو حدس بزن:

😅

فک کنم فرقی ندارن ! بازم همون همه آرگومان ها هست معنیش ؟
عنوان: پاسخ : یک سوال در مورد function & awk
ارسال شده توسط: دانیال بهزادی در 20 بهمن 1400، 04:04 ب‌ظ
نه. امتحانش کن.
عنوان: پاسخ : یک سوال در مورد function & awk
ارسال شده توسط: سودو. در 20 بهمن 1400، 04:12 ب‌ظ
نه. امتحانش کن.
کار نمیده روی این فانکشن ! چون اونی که برای $1 میدم رو هم به عنوان فایلی که میخوام دسترسیشو تغییر بدم میشناسه ! ولی خب فایلی با اسم rwx وجود نداره که !
ولی قبلی مشکلمو حل کرد ، اما واقعا روشی برای awk نمیشناسین ؟
عنوان: پاسخ : یک سوال در مورد function & awk
ارسال شده توسط: سودو. در 21 بهمن 1400، 07:28 ب‌ظ
چیشد جناب بهزادی ؟

( کسی برای awk ایده ای نداره ؟ )
عنوان: پاسخ : یک سوال در مورد function & awk
ارسال شده توسط: Dragon- در 27 بهمن 1400، 09:40 ب‌ظ
نه. امتحانش کن.
کار نمیده روی این فانکشن ! چون اونی که برای $1 میدم رو هم به عنوان فایلی که میخوام دسترسیشو تغییر بدم میشناسه ! ولی خب فایلی با اسم rwx وجود نداره که !
ولی قبلی مشکلمو حل کرد ، اما واقعا روشی برای awk نمیشناسین ؟
$0 میشه چیزی که برنامه با اون اجرا شده. مثلا توی یه اسکریپت، این رو امتحان کنید echo $0
می‌تونید یه لینک به اسکریپت ایجاد کنید و بعد از طریق اون لینک، اسکریپت رو اجرا کنید. بعد ببینید echo $0 توی اسکریپت چی میگه.

( کسی برای awk ایده ای نداره ؟ )
اینجا (https://maktabkhooneh.org/course/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%B2%D8%A8%D8%A7%D9%86-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-AWK-mk1007/) یه آموزشی درباره awk هست. شاید کمکتون که.