تغییر نام فایل ها در Windows Explorer

تغییر نام فایل ها بصورت گروهی در ویندوز

تغییر نام فایل ها در Windows Explorer
تغییر نام فایل ها در Windows Explorer

حتماً برای شما هم پیش آمده است که در ویندوز بخواهید نام گروهی از فایل ها را همزمان تغییر دهید. خب در ساده ترین حالت هدف تغییر نام کلی فایل ها است در این حالت راه حل بشرح زیر است:

  1. همه فایل های مورد نظر را انتخاب کنید.
  2. کلید F2 را بزنید.
  3. نام جدید را وارد کرده و کلید Enter را بزنید.

از آنجایی که امکان وجود دو فایل هم نام در یک مسیر وجود ندارد ویندوز فایل های انتخاب شده را با فرض اینکه برای نام آنها عبارت “abc” وارد شده باشد به ترتیب به صورت زیر تغییر نام می دهد.

abc (1), abc (2), abc (3),..., abc (n)

تغییر گروهی نام فایل ها در ویندوز با PowerShell

در مواقعی خواست ما کمی پیچیده تر از این حالت است که بخواهیم نام چند فایل را بصورت کامل تغییر دهیم مثلاً ممکن است بخواهیم عبارتی را از اول یا آخر اسم چند فایل برداریم. مثلاً فایل هایی بصورت زیر داریم:

Notif-SampleMovie-S1E1.mkv
Notif-SampleMovie-S1E1.srt
Notif-SampleMovie-S1E2.mkv
Notif-SampleMovie-S1E2.srt
Notif-SampleMovie-S1E3.mkv
Notif-SampleMovie-S1E3.srt
.
.
.
Notif-SampleMovie-S1En.mkv
Notif-SampleMovie-S1En.srt

می خواهیم عبارت [Notif-] را از اول نام همه فایل ها برداریم بطوری که نتیجه ای مثل زیر حاصل شود:

SampleMovie-S1E1.mkv
SampleMovie-S1E1.srt
SampleMovie-S1E2.mkv
SampleMovie-S1E2.srt
SampleMovie-S1E3.mkv
SampleMovie-S1E3.srt
.
.
.
SampleMovie-S1En.mkv
SampleMovie-S1En.srt

ویندوز خود چنین امکانی را برای انجام اینکار ندارد تا نام همه فایل ها را بصورت خودکار تغییر دهد. خب اولین راه حل این است که بصورت دستی دست بکار شویم و فایل ها را یکی یکی تغییر نام دهیم. این روش برای تعداد فایل کم قابل تحمل است اما برای تعداد زیاد فایل کاری طاقت فرساست. خب از آنجایی که برای هر مشکلی راه حلی وجود دارد برای این موضوع هم روشی وجود دارد که با یک دستور نام تمام فایل ها طبق خواسته شما تغییر میکنند. کلید کار در دست PowerShell می باشد.

ویندوز پاورشل (Windows PowerShell)

ویندوز پاورشل (Windows PowerShell) یک چارچوب مدیریتی برای پیکربندی و خودکارسازی وظایف را فراهم می کند و به عنوان یک موتور خودکار قابل ارتقاء، از طرف مایکروسافت ارائه شده است. پاورشال از یک پوسته خط فرمان و یک زبان پردازه‌نویسی تشکیل شده و دسترسی کاملی به COM و WMI را فراهم می کند. PowerShell به مدیران امکان مدیریت سیستم (سیستم های لینوکس و دستگاه های شبکه) در هر دو حالت محلی و از راه دور (Remote) را می دهد.

کلاً اگر با محیط CMD آشنایی داشته باشید با پاورشل هم می توانید براحتی ارتباط برقرار کنید. پاورشل مثل یک چوب جادوست که اگر کار کردن با آن را بلد باشید می توانید کارهای خارق العاده ای با آن انجام دهید.

خب حال روش حل مسئله تغییر گروهی نام فایل ها برای حذف پیشوند از ابتدای نام آنها بصورت زیر می باشد:

ابتدا باید وارد محیط پاورشل شوید برای اینکار:

در منوی استارت کافی است کلمه PowerShell را جستجو کنید تا ویندوز میانبر اجرای آن را به شما نمایش دهد:

اجرای PowerShell از منوی استارت
اجرای PowerShell از منوی استارت

و یا در منوی استارت این مسیر را دنبال کنید:

Start Menu\Programs\Accessories\Windows PowerShell

بعد از باز شدن پاورشل با محیط آبی رنگ آن روبرو خواهید شد.

تصویر محیط نرم افزار خط فرمان پاورشل PowerShell
تصویر محیط نرم افزار خط فرمان پاورشل PowerShell

برای تغییر نام فایل ها باید مسیر جاری پاورشل را به پوشه ای که فایل ها در آن قرار دارند تغییر دهید برای این کار مثل محیط CMD می توان از دستور cd استفاده کرد. دستور cd دستوری است که با آن می توان بین پوشه ها حرکت کرد. فقط توجه داشته باشید که برای پوشه هایی که نام آنها دارای کاراکتر فاصله (Space) می باشد باید نام آنها را در درون کاراکتر “” قرار دهید. بطور مثال اگر فایل های من در مسیر (C:\movie\session 1\edpisode 1) باشد باید دستورات زیر را به ترتیب اجرا کرد تا مسیر جاری پاورشل به پوشه موردنظر ما تغییر کند.

PS C:\Users\REZA> cd\
PS C:\> cd movie
PS C:\movie> cd "session 1"
PS C:\movie\session 1> cd "episode 1"
PS C:\movie\session 1\episode 1>

پس از اینکه مسیر جاری به پوشه مورد نظر ما تغییر کرد برای حذف عبارت “-Notif” از اول نام فایل ها دستور زیر را وارد می کنیم:

get-childitem *.* | foreach { rename-item $_ $_.Name.Replace("Notif-", "") }

دستور get-childitem در ترکیب با عبارت *.* لیست فایل ها با هر نام و هر پسوندی را برای تغییر نام بر می گرداند. سپس دستور foreach به ازای هریک از فایل های لیست شده که در ضابطه تعیین شده صدق میکنند، بررسی می کند که آیا در ابتدای نام آن عبارت -Notif وجود دارد یا خیر اگر وجود داشته باشد آن را با یک رشته تهی جایگزین می کند.

یک مثال دیگر:

فایل های زیر را در نظربگیرید:

تغییر نام فایل ها بصورت گروهی با PowerShell - تصویر یک قبل از تغییرنام
تغییر نام فایل ها بصورت گروهی با PowerShell – تصویر یک قبل از تغییرنام

می خواهیم کاراکترهای فاصله موجود در نام ها را به کاراکتر Underline “_” تغییر دهیم بدین منظور از دستور زیر استفاده می کنیم:

Dir | Rename-Item –NewName { $_.name –replace “ “,”_” }
تغییر نام فایل ها بصورت گروهی با PowerShell - تصویر دو - دستور تغییرنام
تغییر نام فایل ها بصورت گروهی با PowerShell – تصویر دو – دستور تغییرنام

دستور Dir لیست همه فایل های موجود در دایرکتوری (پوشه) جاری را بر می گرداند، سپس دستور Rename-Item بقیه کار را انجام داده و کاراکترهای فاصله را با UnderScore یا همان UnderLine جایگزین می کند.

پس از اجرای دستور بالا نتیجه زیر حاصل می شود:

تغییر نام فایل ها بصورت گروهی با PowerShell - تصویر سه - نتیجه تغییرنام
تغییر نام فایل ها بصورت گروهی با PowerShell – تصویر سه – نتیجه تغییرنام

تغییر نام فایل ها با استفاده از خط فرمان CMD

در مجموعه دستورات DOS دستور Rename یا Ren برای تغییر نام فایل و پوشه ها موجود است که می توانید از آن برای تغییر نام همزمان چندفایل استفاده کنید. حال اگر از الگوهای Wildcard مثل * و ? استفاده کنید می توانید کارهای جالبی انجام دهید.

نکته اول برای استفاده از این دستور بازکردن محیط CMD یا همان شبیه ساز خط فرمان DOS در ویندوز به نام Command Prompt جهت ورود دستور می باشد. ساده ترین راه باز کردن CMD در یک مسیر مشخص این است که پوشه مورد نظر را باز کرده و همانطور که کلید Shift را نگه داشته اید درون پوشه راست کلیک کرده و گزینه open Command windows here را انتخاب کنید تا پنجره CMD با مسیر جاری پوشه مورد نظر باز شود. در غیر اینصورت می توانید در کادر RUN عبارت CMD را تایپ کرده و یا در منوی استارت آن را جستجو کنید تا بتوانید CMD را باز کنید اما باید همانطور که در بخش پاورشل توضیح داده شد با دستور cd مسیر جاری را به پوشه مورد نظر تغییر دهید.

تغییرنام فایل ها با استفاده از CMD و دستور ren - تصویر 1 باز کردن CMD در پوشه هدف
تغییرنام فایل ها با استفاده از CMD و دستور ren – تصویر 1 باز کردن CMD در پوشه هدف

یکی از مهمترین استفاده های دستور ren تغییر دسته جمعی پسوند گروهی از فایل ها می باشد. بعنوان مثال دستور زیر تمام فایل های html موجود در پوشه جاری را به txt تغییر می دهد:

ren *.html *.txt
تغییرنام فایل ها با استفاده از CMD و دستور ren - تصویر 2 - اجرای دستور در CMD
تغییرنام فایل ها با استفاده از CMD و دستور ren – تصویر 2 – اجرای دستور در CMD

نتیجه کار پس از اجرای دستور بالا بصورت زیر خواهد بود:

تغییرنام فایل ها با استفاده از CMD و دستور ren - تصویر 3 - نتیجه کار
تغییرنام فایل ها با استفاده از CMD و دستور ren – تصویر 3 – نتیجه کار

روش آخر: استفاده از نرم افزارهای تغییر نام

اگر خیلی اهل دستور و کارهای فنی نیستید می توانید از یکی دوجین نرم افزارهای آماده تغییر نام استفاده کنید. در زیر نام چندتا از این برنامه ها که معروف تر هستند را معرفی خواهیم کرد.


Bulk Rename Utility

نرم افزار Bulk Rename Utility یک برنامه کم حجم برای تغییر نام فولدر و فایل ها با امکانات فوق العاده قابلیت تغییر نام دسته ای و سریع فایل و فولدرها می باشد.

  • تغییر نام سریع چندین فایل و پوشه
  • امکان تغییرنام خودکار بر اساس متاتگ های فایل های Jpeg و mp3
  • امکان کنترل همزمان بیش از 100000 فایل در یک پوشه و تغییرنام 1000 فایل در هر ثانیه
  • تغییرنام به روش های متفاوت، پشوندی، پسوندی و …
  • نام گذاری بر اساس تاریخ و زمان، اعداد، تغییر حروف بزرگ و کوچک و …
  • کاملاً رایگان
  • و کلی ویژگی دیگر که باید نصب کنید و خودتان آنها را تجربه کنید.
Bulk Rename Utility
Bulk Rename Utility

Advanced Renamer

یک نرم افزار قدرتمند دیگر که تمام  ویژگی های Bulk Rename Utility را به همراه داشته و بعلاوه بر آن از امکانات دیگری مثل کار با داده های سیستم موقعیت یاب GPS که در آن می توان نام شهری که تصویر در آن گرفته شده را به نام فایل آن تصویر اضافه کرد و … بهره می برد. این نرم افزار نیز کاملاً رایگان می باشد.

محیط برنامه Advanced Renamer
محیط برنامه Advanced Renamer

ReNamer

محیط برنامه Renamer
محیط برنامه Renamer

Rename Master

Rename Master's interface
Rename Master’s interface

همچنین برخی از نرم افزارهای دیگر هم موجود هستند که می توانید آنها را نصب کرده و استفاده کنید.

موفق باشید.

6 thoughts on “تغییر نام گروهی و دسته جمعی فایل ها در ویندوز

  1. سلام ببشید تو پاوزشل میخوام حرف اول فایل هارو به صورت حرف بزرگ کنم دستوری داره؟

  2. سلام ممنون از توضیحات خوبتون اما من می خواستم مثلا عبارت aaa را به آخر اسم 5000 تا فایل اظافه کنم که تعداد کاراکتر های این 5000 تا فایل متفاوته مثلا یکی 20 کاراکتر اسمشه اما یکی 3 کاراکتر اسمشه باید از چه دستوری استفاده کنم ممنون میشم راهنمایی کنید

    1. سلام برای اینکار می توانید از پاورشل استفاده کنید.

      $items=Get-ChildItem;
      $items | Rename-Item -NewName {$_.Name + "_Suffix" };

      بجای عبارت Suffix میتوانید عبارت مورد نظر خودتان را جایگزین کنید

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *