![Powershell - 如何使用带有多个选择器和通配符的“remove-item”?](https://linux22.com/image/1484716/Powershell%20-%20%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%E5%B8%A6%E6%9C%89%E5%A4%9A%E4%B8%AA%E9%80%89%E6%8B%A9%E5%99%A8%E5%92%8C%E9%80%9A%E9%85%8D%E7%AC%A6%E7%9A%84%E2%80%9Cremove-item%E2%80%9D%EF%BC%9F.png)
我有一个名为“test-folder”的文件夹,其中包含许多不同类型的文件。我想删除所有音乐文件。(mp3、mp4、mpeg...)
我知道我可以像这样删除所有 mp3 文件:
remove-item C:\path\to\test-folder\"*.mp3*"
是否可以添加多个通配符选择器,例如:
remove-item C:\path\to\test-folder\"*.mp3*+*.mpeg*"
所以我可以用一个命令删除所有的音乐文件吗?
答案1
对于单个目录:
remove-item C:\path\to\test-folder\* -include *.mp3, *.mpeg
或者当文件跨越多个目录时有用的方法:
remove-item C:\path\to\test-folder\*.mp3, C:\path\to\other\test-folder\*.mpeg
或者你可以先移动到该目录:
cd C:\path\to\test-folder\
remove-item *.mp3, *.mpeg
用于Get-Help Remove-Item -full
了解可用标志和用法的完整详细信息。
答案2
remove-item C:\path\to\test\folder\* -include .mp4,.mp3
上述命令需要稍作修改才能正常工作(感谢@root)
remove-item C:\path\to\test\folder\* -include *.mp4,*.mp3
答案3
相反的情况是,我想从 Music 文件夹中删除所有 ArtWork、db、Zune、桌面文件。我们需要对网络驱动器 NAS1 使用 -Recurse:
\\NAS1\Public> remove-item '.\Shared Music\*' -include desktop.ini,_msl.db,Zune*.jpg,Folder.jpg,AlbumArt*.jpg -Recurse