از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
حلقه Bash از طریق دایرکتوری ها به صورت بازگشتی
سرفصلهای مطلب
حلقه برای Bash
برای دستیابی به یک حلقه بازگشتی از طریق دایرکتوری ها، از آن استفاده خواهیم کرد bash حلقه ها، به طور خاص، یک حلقه برای.
حلقه for یک نوع حلقه رایج در Bash و سایر زبان های برنامه نویسی است. بر روی یک لیست معین از آیتم ها/گزینه ها تکرار می شود تا زمانی که مجموعه ای از دستورات را اجرا می کند.
نحو کلی دستور حلقه for به صورت زیر است:
انجام دادن
[COMMAND]
انجام شده;
در اینجا یک مثال از a bash حلقه است:
برای من که در {0..10}
انجام دادن
echo ‘$’
انجام شده
حلقه بالا مقادیر 0 تا 10 را چاپ می کند.
ورودی کاربر Bash
در مرحله بعد، ما باید از کاربر بخواهیم که یک فهرست معتبر را برای حلقه زدن از آن بخواهد. برای پذیرش ورودی کاربر، از echo فرمان در Bash.
مثلا:
echo “دایرکتوری را وارد کنید”
خواندن کارگردان
سی دی $dir
echo “اکنون که در /و غیره”
انتقال فایل ها (Bash Script)
با مفاهیم حلقه ها و ورودی کاربر خارج از راه، می توانیم پوسته خود را کنار هم قرار دهیم. اولین عملیات یافتن فایلها به صورت بازگشتی با پسوندهای خاص و انتقال آنهاست.
در اینجا یک اسکریپت نمونه برای آن وجود دارد:
echo “وارد کارگردان”
خواندن کارگردان
echo “مقصد را وارد کنید”
خواندن مقصد
برای من که در $(پیدا کردن $dir -نام “*.log”);
انجام دادن
mv -v $i $dest
انجام شده;
اسکریپت از کاربر یک دایرکتوری می خواهد و سپس یک پسوند خاص را جستجو می کند. سپس فایل ها را به مقصد مشخص شده منتقل می کند.
فایلهاروحذف کن
اسکریپت بالا همچنین می تواند برای حذف فایل ها به جای جابجایی آنها تغییر یابد. یک مثال به عنوان است
echo “دیر را وارد کنید”
خواندن کارگردان
برای من که در $(پیدا کردن $dir -نام “*.log”);
انجام دادن
rm -RF $i
انجام شده;
پرینت فایل ها
به print فایل های موجود در یک دایرکتوری، از اسکریپت به صورت زیر استفاده کنید:
echo “وارد کارگردان”
خواندن کارگردان
سی دی $dir
برای من که در $(پیدا کردن $dir -نوع f);
انجام دادن
echo $i;
انجام شده;
نتیجه
موارد بالا نمونه اسکریپت هایی هستند که می توانید از آنها برای حلقه کردن دایرکتوری ها و انجام یک عمل خاص استفاده کنید. خوب است توجه داشته باشید که ابزارهایی برای انجام چنین کارهایی وجود دارد، اما اگر ابزار مناسبی پیدا نکردید، اسکریپت راه خوبی است.
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم
زمان انتشار: 1402-12-30 19:57:04