假设我有几个名为的文件:
1. Item-A.csv
2. Item-B.csv
3. Total-AB.csv
4. Pictures.jpeg
我需要删除所有.csv扩展名,除了任何目录中的total-av.csv。因此,在我所在的任何目录中生成的剩余文件如下:
1. Total-AB.csv
2. Pictures.jpeg
感谢您的帮助。
答案 0 :(得分:0)
在你的.bat文件中试试这个:
for /f "usebackq" %%f in (`dir *.csv /s/b ^| findstr /v /i "Total-AB.csv"`) do (
echo %%f
rem del %%f
)
一旦它看起来像预期的那样工作,就取出rem
。
答案 1 :(得分:0)
这是一个PowerShell命令,用于删除除total-av.csv之外的所有子文件夹中的每个* .csv
Dir *.csv -Exclude total-av.csv -R | del
这是不使用批次短名称的相同命令。
Get-ChildItem -Filter *.csv -Exclude total-av.csv -Recurse | Remove-Item
答案 2 :(得分:0)
在示例文件夹树上测试它。请注意,它是整个文件夹树的递归。
@echo off
for /r "d:\base\folder" %%a in (*.csv) do if /i not "%%~nxa"=="total-av.csv" del "%%a"