我正在寻找一个批处理文件来从.txt文件列表中删除jpg'
E:\ test \ 1有7张图片1.jpg到7.jpg list.txt包含要删除的文件列表1.jpg,2.jpg
感谢您的帮助
我找到了将list.txt中的.jpgs复制到另一个文件夹的代码。 而不是复制我需要它删除,
@echo off
set src_folder=E:\test\1
set dst_folder=E:\test\2
set file_list=E:\test\list.txt
if not exist "%dst_folder%" mkdir "%dst_folder%"
for /f "delims=" %%f in (%file_list%) do (
xcopy "%src_folder%\%%f" "%dst_folder%\"
)
我使用excel找到了这个解决方案 列A del B列图像列表 列C连接(A1,B1)并将批处理文件中的列C复制并粘贴到与图像相同的目录中。
答案 0 :(得分:1)
这应该这样做:
@Echo Off
(Set file_list=E:\test\list.txt)
For /F "UseBackQ Delims=" %%A In ("%file_list%") Do If Exist "%%~A" Del "%%~A"
您甚至可以将list.txt拖放到此单行批处理脚本中。
@For /F "UseBackQ Delims=" %%A In ("%~1") Do @(If Exist "%%~A" Del "%%~A")
答案 1 :(得分:0)
这可以使用单行批处理文件来完成:
@for /F "usebackq delims=" %%I in ("E:\test\list.txt") do @del "%%~I" 2>nul
命令 FOR 处理指定文本文件中的每一行,并使用从文件中读取的行执行命令 DEL 。
删除文件前不进行文件存在检查。而是通过将文件从句柄 STDERR 重定向到设备 NUL 来删除文件并显示错误消息。
要了解使用的命令及其工作原理,请打开命令提示符窗口,执行以下命令,并完全阅读为每个命令显示的所有帮助页面。
del /?
for /?
另请阅读Microsoft文章Using command redirection operators。