محمدرضا ذوالقدری
محمدرضا ذوالقدری
خواندن ۱ دقیقه·۳ سال پیش

تو لینوکس؛ بدون حلقه 1000 تا فایل درست کن

الکی مثلا اینجا یوتیوبه
الکی مثلا اینجا یوتیوبه


تو این قسمت از ترفند های لینوکسی با هم دیگه میخوایم یه کامندی اجرا کنیم که n تا فایل و پوشه برامون بسازه. فقط و فقط به کمک { }.

Array builder

چندتا مثال با مقادیر ثابت:

echo {&quotApple&quot,&quotBanana&quot,&quotCherry&quot} # Apple Banana Cherry echo {1,2,3,4,5} # 1 2 3 4 5

خب میبینیم که هرچی تو آکولاد(curly braces) باشه، آرایه در نظر میگیره. خب حالا میخایم یه بازه‌ای(range) رو توی آرایه داشته باشیم:

echo {1..10} # 1 2 3 4 5 6 7 8 9 10


دیدید! ما فقط شروع و پایان بازه رو تعریف کردیم. حالا اینو داشته باش:

echo {1..20..2} # 1 3 5 7 9 11 13 15 17 19


خب به جای خوبش رسیدیم. شما این آرایه رو میتونید به عنوان ورودی به کامندای دیگه پاس بدید. مثلا میتونید یه آرایه 1000 تایی درست کنید و به mkdir بدید. به ازای هر عضو آرایه، یه پوشه درست میکنه

mkdir {0000..1000}

میتونید به اسم ها پسوند و پیشوند هم اضافه کنید:

mkdir log-{2000..2022}-server

حالا پوشه تو پوشه! 10 پوشه که هرکدوم ۵ تا پوشه دارن:

mkdir -p {1..10}/{1..5}


برای حذفشون از این استفاده کنید:

rm -r {1..1000}


خب فکر کنم به هدف نوشته رسیدیم. برای تمرین میتونید اینارو امتحان کنید:

  • ساخت n تا فایل با دستور touch
  • ساخت n تا پوشه با فرمت DATETIME-NUMBER
  • ساخت بازه‌ حروف a..z بجای اعداد



لینوکسlinuxbashحلقه
به زودی در این مکان درباره من چیزی نوشته می‌شود.
شاید از این پست‌ها خوشتان بیاید