2016-10-29 6 views
-5

Я ищу пакетный файл для удаления JPG-х из текстового списка файловЯ ищу пакетный файл для удаления JPG-х из текстового файла список

E: \ Test \ 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%\" 
) 

я нашел это решение, используя первенствовать колонки ДЭС колонки список B изображений колонка C Concatenate (A1, B1) и скопировать и вставить столбец С в командный файл запускается в том же каталоге, что и изображения.

+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 

командной для процессов каждой строки из указанного текстового файла и выполняет команду DEL с линией чтения из файл.

Перед удалением файла не выполняется проверка наличия файла. Вместо этого файл удаляется с сообщением об ошибке, подавленным перенаправлением его с дескриптора STDERR на устройство NUL.

Чтобы понять используемые команды и как они работают, откройте окно командной строки, выполните там следующие команды и внимательно прочитайте все страницы справки, отображаемые для каждой команды.

  • del /?
  • for /?

Читайте также статью Microsoft Using command redirection operators.

 Смежные вопросы

  • Нет связанных вопросов^_^