2016-10-29 118 views
-5

我在尋找一個批處理文件從一個txt文件列表中刪除JPG文件刪除JPG格式的我在尋找一個批處理文件從一個txt文件列表

E:\測試\ 1有7張圖片1.JPG到7.JPG LIST.TXT有一個文件列表中刪除1.JPG,2.JPG

感謝您的幫助

我發現的代碼,將在我的列表中複製.jpgs。 txt到另一個文件夾。 而不是複製我需要它刪除的,在一個

@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德爾 塔B圖像 列C:連接(A1,B1)的列表中選擇此溶液以及複製和粘貼列C批處理文件在與圖像相同的目錄中運行。

+0

這個網站不是一個代碼寫作服務btw – Carcigenicate

+0

你可以發佈你到目前爲止嘗試過的代碼,然後我們可以改進它。 – Ukimiku

回答

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") 
+0

'set'命令行括號的用途是什麼?讓我推薦使用語法'set「file_list = E:\ test \ list.txt」'代替... – aschipfl

+0

你的例子中雙引號的用途是什麼? – Compo

+1

「set」name = value「'中的括號通常用於避免附加不需要的空格並防止解釋特殊字符。 – user2956477

0

這可以用一個單一的線批處理文件來完成:

@for /F "usebackq delims=" %%I in ("E:\test\list.txt") do @del "%%~I" 2>nul 

命令FOR處理從指定的文本文件的每一行,並執行命令DEL從讀出的行文件。

刪除文件前沒有進行文件存在檢查。而是通過將錯誤消息從句柄STDERR重定向到設備NUL來刪除錯誤消息。

爲了解所使用的命令及其工作方式,請打開命令提示符窗口,在其中執行以下命令,並仔細閱讀爲每個命令顯示的所有幫助頁面。

  • del /?
  • for /?

閱讀也是微軟的文章Using command redirection operators

相關問題