وبلاگ رسانگار
با ما حرفه ای باشید

سرور مجازی NVMe

روش استفاده از Bash برای تغییر پسوند فایل چند فایل در یک پوشه

0 1
زمان لازم برای مطالعه: 3 دقیقه


این آموزش روشی سریع برای استفاده از Bash برای تغییر نام فایل ها از یک پسوند خاص به پسوند دیگر را مورد بحث قرار می دهد. از a استفاده خواهیم کرد bash حلقه، پیدا کردن، تغییر نام، و دستور mv برای این یکی.

روش 1: حلقه Bash

رایج ترین راه برای تغییر پسوند فایل به صورت بازگشتی در دایرکتوری استفاده از a است bash برای حلقه می‌توانیم از کاربر بخواهیم فهرست هدف، پسوند قدیمی، و پسوند جدید را برای تغییر نام با استفاده از a وارد کند bash اسکریپت

مرحله 1: اسکریپت را جمع آوری کنید
اجازه دهید شروع به مونتاژ اسکریپت کنیم. اولین قسمتی که نیاز داریم این است که دایرکتوری هدف را بدست آوریم. برای این، ما می توانیم bash به عنوان خوانده شده:

#!/صندوقچه/bash
echo “دایرکتوری مورد نظر را وارد کنید”
خواندن target_dir
سی دی $target_dir

echo “پسوند فایل را برای جستجو بدون نقطه وارد کنید”
خواندن old_ext

echo “پسوند فایل جدید را برای تغییر نام بدون نقطه وارد کنید”
خواندن new_ext
echo $target_dir، $old_ext، $new_ext

اسکریپت بالا از کاربر دایرکتوری می خواهد process و سپس cd را وارد دایرکتوری set کنید.

بعد، پسوند قدیمی را بدون نقطه (.) دریافت می کنیم. در نهایت، پسوند جدید را برای تغییر نام فایل ها دریافت می کنیم.

حال به پردازش فایل ها می پردازیم. برای این؛ ما می توانیم یک قانون ساده را پیاده سازی کنیم که به صورت بازگشتی فایل ها را به صورت زیر جستجو می کند:

برای فایل که در *.$old_ext
انجام دادن

پیشنهاد می‌کنیم بخوانید:  روش استفاده از دستور Curl در Bash

mv -v $file ${file%.$old_ext}.$new_ext
انجام شده;

حلقه for بالا، دایرکتوری تصویب شده را برای همه فایل‌های با پسوند قدیمی جستجو می‌کند و نام آنها را به پسوند جدید تغییر می‌دهد.

برای پرمخاطب شدن، از دستور mv با -v استفاده می کنیم. شما می توانید این خروجی را با جایگزین کردن پرچم -v با – سرکوب کنید.

مرحله 2: اسکریپت را اجرا کنید
حالا بیایید اسکریپت را آزمایش کنیم. اسکریپت نهایی در زیر آمده است:

#!/صندوقچه/bash
echo “دایرکتوری مورد نظر را وارد کنید”
خواندن target_dir
سی دی $target_dir

echo “پسوند فایل را برای جستجو بدون نقطه وارد کنید”
خواندن old_ext

echo “پسوند فایل جدید را برای تغییر نام بدون نقطه وارد کنید”
خواندن new_ext

echo $target_dir، $old_ext، $new_ext

برای فایل که در *.$old_ext
انجام دادن

mv -v $file ${file%.$old_ext}.$new_ext
انجام شده;

در این تست از پوشه /var/log استفاده می کنیم و نام تمام فایل های log را به .bak تغییر می دهیم. در اینجا محتویات دایرکتوری قبل از اجرای اسکریپت آمده است.

$ ls l /var/log/ | grep .log

روش استفاده از Bash برای تغییر پسوند فایل چند فایل در یک پوشه

حالا اجازه دهید اسکریپت را اجرا کنیم.

$ chmod +x extensions.sh
$ sudo ./extensions

روش استفاده از Bash برای تغییر پسوند فایل چند فایل در یک پوشهروش استفاده از Bash برای تغییر پسوند فایل چند فایل در یک پوشه

اسکرین شات بالا اسکریپت را در حال پردازش فایل ها و تغییر نام همه فایل ها با .log به .bak نشان می دهد.

از آنجایی که این یک اسکریپت تعاملی است، زمانی که نمی‌خواهید برنامه‌های افزودنی را کدنویسی کنید، مفید است.

در زیر محتویات پوشه /var/log بعد از اسکریپت آمده است.

$ ls -l /var/log/ | grep .bak

روش استفاده از Bash برای تغییر پسوند فایل چند فایل در یک پوشهروش استفاده از Bash برای تغییر پسوند فایل چند فایل در یک پوشه

برای برگرداندن تغییرات، پسوند قدیمی را به .bak و پسوند جدید را به صورت .log تغییر دهید

پیشنهاد می‌کنیم بخوانید:  روش استفاده از دستور awk در Bash

روش استفاده از Bash برای تغییر پسوند فایل چند فایل در یک پوشهروش استفاده از Bash برای تغییر پسوند فایل چند فایل در یک پوشه

روش 2: تغییر نام دستور

اگر تمایلی به کار با یک اسکریپت ندارید، می توانید از ابزار تغییر نام برای تغییر پسوند فایل ها به صورت بازگشتی استفاده کنید.

برای نصب تغییر نام از دستور زیر استفاده کنید:

$ sudo apt-get install -y را تغییر نام دهید

پس از نصب، می توانید از دستور تغییر نام به صورت زیر استفاده کنید:

# به دایرکتوری هدف تغییر دهید
سی دی /var/log/
# تغییر پسوند
sudo تغییر نام ‘s/\.log/.bak/’ *.log

برای برگرداندن تغییرات، .bak را به .log تغییر دهید و بالعکس.

$ sudo تغییر نام ‘s/\.bak/.log/’ *.bak

روش 3: دستور MMV

همچنین می توانید از دستور mmv استفاده کنید که به شما امکان می دهد چندین فایل را به طور همزمان جابجا کنید. mmv را با دستور نصب کنید:

$ sudo apt-get نصب mmv

برای تغییر نام فایل ها با دستور mmv:

$ سی دی /var/log/
mmv “*.csv” “#1.xls”

شماره 1 فایل ها را به دایرکتوری فعلی منتقل می کند. پس از اجرای دستور، نام تمام فایل های .log به پسوند مشخص شده تغییر می کند.

جمع بندی

این مقاله روش‌های مختلفی را مورد بحث قرار می‌دهد که می‌توانید به صورت بازگشتی پسوندهای فایل را در یک فهرست خاص تغییر نام دهید. با این حال، خوب است توجه داشته باشید که می‌توانید استراتژی‌هایی غیر از مواردی که در این راهنما مورد بحث قرار گرفته‌اند، پیاده‌سازی کنید.

ممنون که خواندید و به اشتراک بگذارید!

برای نگارش بخشهایی از این متن ممکن است از ترجمه ماشینی یا هوش مصنوعی GPT استفاده شده باشد
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم

زمان انتشار: 1402-12-30 18:29:04

امتیاز شما به این مطلب
دیدگاه شما در خصوص مطلب چیست ؟

آدرس ایمیل شما منتشر نخواهد شد.

لطفا دیدگاه خود را با احترام به دیدگاه های دیگران و با توجه به محتوای مطلب درج کنید