我想删除.mp3
中所有C:\temp
文件,这些文件以txt文件Mytxtfile.txt
中定义的开头。
例如,C:\temp
包含:
AliciaEffort.mp3
AliciaKlay.mp3
AliciaLow.mp3
Emanlw.mp3
EmanDown.mp3
JonKLa.mp3
JohnHd.mp3
Mytxtfile.txt
包含:
AliciaEffor
Emoanlw
GrezyK
JohnHd
etc.
我的代码:
set WORKDIR="C:\temp"
set LISTFILES="C:\Users\StevenRg\Desktop\mytxtfile.txt"
pushd %WORKDIR%
for %%G in (*) do (
for /f "tokens=* usebackq" %%H in (%LISTFILES%) do (
if %%G==%%H del /p "%%G"
)
)
popd
但是它不起作用... 有什么想法吗?
答案 0 :(得分:1)
您可能会这样:
@Echo Off
Set "WorkDir=C:\temp"
Set "ListFile=%UserProfile%\Desktop\mytxtfile.txt"
CD /D "%WorkDir%" 2>Nul || Exit /B
If Not Exist "%ListFile%" Exit /B
For /F "UseBackQ Delims=" %%A In ("%ListFile%") Do Del /A /F /Q "%%A*.mp3" 2>Nul
(可选)用以下命令替换最后一行可能更安全:
For /F Delims^=^ EOL^= %%A In ('Type "%ListFile%"') Do Del /A /F /Q "%%~A*.mp3" 2>Nul