简体   繁体   中英

Delete multiple files using powershell and a .txt file

I have a .txt with the names of over 1000 files I want to delete. My .txt file does not have file paths. The files I want to delete are spread throughout multiple folders but they are all in the same drive. Is there any way to use powershell or command prompt to search for all files within my drive with the same name as what is listed in my .txt file and delete them?

Assuming you're PowerShell prompt is currently set at the root location from which you want to start your search and the file is in the same directory:

gc .\MyListOfFilesIWantToDelete.txt | %{gci $_ -Recurse | Remove-Item -WhatIf}

Note, you'll have to remove the -whatif

Or, let's say your file is somewhere else where you have PowerShell opened (eg: ~/Documents), and you want to scan your D: drive. This should work:

gc .\MyListOfFilesIWantToDelete.txt | %{gci D:\ -Filter $_ -Recurse -ErrorAction SilentlyContinue | Remove-Item -WhatIf}

Note I put SilentlyContinue. This is because you'll see a lot of red if you don't have access to folders in your search path.

Alternatively, you can load up a variable with your list of files..

$thesefiles = gc .\mylistoffilesiwanttodelete.txt

.. and use the Remove-Item cmdlet directly..

Remove-Item -Path D:\Folder -Include $thesefiles -Recurse -WhatIf

or in one swoop without loading a variable:

Remove-Item -Path D:\Folder -Include $(gc .\mylistoffilesiwanttodelete.txt) -Recurse -WhatIf

Again, I'm using -WhatIf for testing. Also, I've noticed different behaviors in the past with get-childitem on different versions of PowerShell. I tested these with 5.1

Change directory from following powershell command

Following command will allow you to delete .txt files in specific directory

Get-ChildItem C:\*.txt -file -r | remove-item

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM