انجمنهای فارسی اوبونتو
کمک و پشتیبانی => انجمن عمومی => نویسنده: سودو. در 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
اینجا چیکار کنم ؟
-
برای مورد نخست میتونی از این حالت استفاده کنی:
pr() { chmod u=$1 ${@: 2} ; }
-
برای مورد نخست میتونی از این حالت استفاده کنی:
pr() { chmod u=$1 ${@: 2} ; }
میشه اگه زحمتی نیست ماهی گیری رو هم یادم بدین و فقط ماهی رو در اختیارم نزارین ؟ 😅
اینجا چیکار کردین حداقل بفهممش بعدا بتونم استفاده کنم جای دیگه
-
$@
یعنی همهٔ آرگومانها.
${@: 2}
یعنی از آرکومان دوم به بعد.
برای تمرین، مقدار این رو حدس بزن:
${@: 0}
-
$@
یعنی همهٔ آرگومانها.
${@: 2}
یعنی از آرکومان دوم به بعد.
جالب بود ! در awk کار نمیکنه ؟
-
برای تمرین، مقدار این رو حدس بزن:
😅
فک کنم فرقی ندارن ! بازم همون همه آرگومان ها هست معنیش ؟
-
نه. امتحانش کن.
-
نه. امتحانش کن.
کار نمیده روی این فانکشن ! چون اونی که برای $1 میدم رو هم به عنوان فایلی که میخوام دسترسیشو تغییر بدم میشناسه ! ولی خب فایلی با اسم rwx وجود نداره که !
ولی قبلی مشکلمو حل کرد ، اما واقعا روشی برای awk نمیشناسین ؟
-
چیشد جناب بهزادی ؟
( کسی برای awk ایده ای نداره ؟ )
-
نه. امتحانش کن.
کار نمیده روی این فانکشن ! چون اونی که برای $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 هست. شاید کمکتون که.