یکی از دستورات cmd که شاید کاربرد زیادی داشته باشد، دستور حذف فایل و فولدر است. با دستور del در cmd میتوانید فایل حذف کنید و گاهی اوقات مشکل حذف نشدن فایل یا فولدر با این دستور رفع میشود. اما در ویندوز 10 و ویندوز 11 که واسط خط دستور پیشرفتهتری به اسم PowerShell اضافه شده، بهتر است از دستور Remove-Item استفاده کنید که شاید عملکرد بهتری داشته باشد و البته انجام کارهای پیچیده با آن، سادهتر است.
در ادامه به راهنمای تصویری حذف فایل و فولدر با اجرا کردن دستور در PowerShell میپردازیم. با آموزشی دیگر از سیارهی آیتی همراه باشید.
دقت کنید که مشکل حذف نشدن فولدر یا فایل در ویندوز، گاهی با اجرا کردن دستور del در cmd حل میشود اما اگر این روش پاسخگو نباشد، باید سراغ برنامههای حذف اجباری پوشه یا فایل برای ویندوز برویم چرا که از روشهای مختلف برای حذف کردن فولدر و فایل استفاده میکنند.
همانطور که اشاره کردیم در ویندوزهای جدید بهتر است به جای حذف پوشه های غیر قابل حذف با cmd از دستور Remove-item که در واسط خط دستور پاورشل اجرا میشود، استفاده کنید. خوشبختانه کار با این دستور سادهتر از کار با دستور del در cmd است. در ادامه روش کار را به صورت کامل و تصویری توضیح میدهیم.
روش کپی کردن آدرس کامل فایل و فولدر در ویندوز 11
در ویندوزهای قدیمی برای کپی کردن مسیر کامل یک فایل به همراه اسم فایل، یک روش ساده و سریع وجود نداشت اما در ویندوز ۱۱ این کار با استفاده از منوی راستکلیک قدیمی و انتخاب گزینهی Copy as Path بسیار ساده شده است. برای باز کردن این منو، میتوانید کلید Shift را نگه دارید و روی فایل یا فولدر موردنظر کلیک راست کنید. البته کاربران حرفه ای ویندوز ۱۱ معمولاً نمایش منوی راستکلیک قدیمی را با یک ترفند ساده، فعال کردهاند.
پس از کپی کردن مسیر و نام کامل فایل، میتوانید آن را در واسط خط دستور PowerShell پس از فرمان حذف فایل و فولدر، پیست کنید. کافی است از کلید میانبر Ctrl + V استفاده کنید.
دستور حذف فایل در PowerShell
دستور حذف اجباری فایل در cmd و PowerShell یکسان نیست. در cmd از فرمان del استفاده میشود اما در پاورشل از دستور Remove-Item میشود. روش کار و در واقع سینتکس کار با این دستور مشابه است و میبایستی مسیر و نام دقیق فایل و همینطور پسوند فایل را پس از دستور وارد کنید:
Remove-Item PATH/NAME
به عنوان مثال اگر فایلی با نام و پسوند Old-List.txt روی دستاپ به آدرس C:\Users\username\Desktop دارید، دستور حذف آن به صورت زیر خواهد بود:
Remove-Item "C:\Users\username\Desktop\Old-List.txt"
بنابراین واسط خط دستور پاورشل را با راستکلیک روی آیکون منوی استارت و انتخاب گزینهی Windows PowerShell یا Windows Terminal اجرا کنید و فرمان Remove-Item را تایپ کرده و سپس کلید میانبر Ctrl + V را فشار دهید تا آدرسی که به کمک گزینهی Copy as path کپی کردهاید، پیست شود. در پایان Enter را بزنید.
اما ۳ نکته مهم:
دقت کنید که حتی اگر Remove-Item را به صورت remove-item و با حروف کوچک تایپ کنید هم دستور اجرا میشود.
برای حذف کردن فایلها از درایو C و برخی فولدرهای خاص، به دسترسی ادمین نیاز است. لذا واسط خط دستور را با دسترسی ادمین اجرا کنید.
پیام تأیید ظاهر نمیشود! و فایل سریعاً حذف میشود. لذا مراقب باشید که آدرس اشتباه وارد نکنید. اگر میخواهید پیام تأیید نیز ظاهر شود، میتوانید آپشن Confirm را در پایان اضافه کنید، مثل نمونهی زیر:
Remove-Item "C:\Users\username\Desktop\Old-List.txt" -Confirm
دستور حذف فولدر برای PowerShell ویندوز 11
دستور حذف پوشه برای PowerSHell نیز همان فرمان Remove-Item است که به شیوهی استفاده از آن اشاره کردیم. در مورد حذف فولدر نیز دقیقاً روش کار همان است. به عنوان مثال با دستور زیر میتوانید فولدری به اسم Old Files را حذف کنید:
Remove-Item "C:\Users\username\Desktop\Old Files"
دقت کنید که با اجرا شدن این دستور، تمام محتویات پوشه حذف میشود.
شاید برایتان سوال شده که چطور محتویات یک فولدر را به صورت کامل حذف کنیم، اما در عین حال خود فولدر را حذف نکنیم! در این صورت به دستور حذف تمام فایل های یک فولدر در cmd یا PowerShell نیاز دارید. میتوانید از فرمان Remove-Item استفاده کنید و پس از آدرس کامل و دقیق فولدر، از نماد *.* برای اشاره به تمام حالتهای نام فایل و پسوند فایل استفاده کنید. در نتیجه تمام فایلها حذف میشوند.
به عنوان مثال دستور زیر تمام فایلهایی که داخل فولدر Your Files است را حذف میکند:
Remove-Item "C:\Users\username\Desktop\Your Files\*.*"
آموزش حذف تمام فایل از فولدر و فولدرهای زیرمجموعه آن با دستور PowerShell
شاید داخل فولدر موردنظر شما، تعداد زیادی فایل و همینطور فولدر موجود است و هدف شما این است که فقط فولدرها را نگه دارید و تمام فایلها در فولدر اصلی و فولدرهای زیرمجموعه پاکسازی شود! در این صورت هم یک راه و دستور ساده وجود دارد. کافی است پس از مشخص کردن آدرس فولدر اصلی، در کنار استفاده از *.* برای اشاره به انواع نام فایل و پسوند فایل، از یک آپشن ساده یعنی -Recurse استفاده کنید.
به عنوان مثال فرمان زیر تمام فایلهایی که داخل فولدر Downloads یا فولدرهای داخل این فولدر قرار گرفته را پاکسازی میکند:
Remove-Item "C:\Users\username\Desktop\Downloads" -Recurse -Include *.*
دستور حذف فایل هایی با پسوند دلخواه در ویندوز
یک نیاز مهم و دستور کاربردی نیز مربوط به حذف کردن فایلهایی با پسوند خاص است. به عنوان مثال شاید بخواهید تمام عکسهایی که داخل یک فولدر است و فرمت آن jpg یا jpeg و یا png است را حذف کنید در حالی که سایر فایلها دست نخورد. برای این کار میتوانید از *.jpg استفاده کنید که به معنی آزاد بودن نام فایل و داشتن پسوند jpg است. به همین صورت میتوانید سایر فرمتهای موردنظر را مشخص کنید.
به عنوان مثال فرمان زیر تمام فایلهایی که پسوند jpg دارد را از مسیری به اسم PATH حذف میکند. آپشن Include برای مشخص کردن مواردی که باید حذف شود، کاربرد دارد. لذا PATH را با آدرس فولدر موردنظر جایگزین کنید:
Remove-Item PATH -Include *.jpg
یک نیاز دیگر کاربران ویندوز، حذف تمام فایلها به جز فایلهایی با پسوند دلخواه است. در این حالت میبایستی از آپشن Exclude استفاده کنید و پس از آن، فرمت نام و پسوند را مشخص کنید. به عنوان مثال فرمان زیر تمام فایلها به جز فایلهای پی دی اف را از مسیر مشخص شده حذف میکند:
Remove-Item PATH -Exclude *.pdf
دستور حذف کردن تمام فولدرهای خالی در ویندوز
یک دستور مفید و کاربردی دیگر برای کاربران PowerShell، دستوری است که تمام فولدرهای خالی را حذف میکند. برای این کار نیز یک فرمان جالب وجود دارد، کافی است در دستور زیر، به جای PATH آدرس فولدر بالادست را بدهید. به عنوان مثال میتوانید آدرس درایو D را وارد کنید تا تمام فولدرهای خالی که در درایو d قرار دارد، حذف شود.
Get-ChildItem -Recurse PATH | where { $_.PSISContainer -and @( $_ | Get-ChildItem ).Count -eq 0 } | Remove-Item
همانطور که متوجه شدهاید دستور Remove-Item پاورشل، در حذف کردن فایل و فولدر با شرایط مختلف، بسیار قوی است و حتی بهتر از کار با دستور حذف فایل و فولدر در cmd است.
howtogeekسیارهی آیتی