Чтение путей с пробелами из файла с использованием цикла FOR в командной строке Windows - PullRequest
0 голосов
/ 06 августа 2020

У меня есть список файлов в текстовом файле, которые я хочу удалить. Я пытаюсь использовать командную строку Windows FOR с DEL для выполнения sh this. У меня проблема в том, что на некоторых путях есть пробелы. Я пробовал использовать двойные кавычки в текстовом файле, но командная строка выдает ошибку, говоря, что она может найти путь. Примеры путей с ошибками ниже.

Пример списка файлов в d:\testfiles.txt

d:\test\test_001.txt
d:\test\test_002.txt
"d:\test\test with space 001.txt"
d:\test\test with space 002.txt

Командная строка: for /F %i in (d:\testfiles.txt) do del %i

test_001.txt и test_002.txt удалены хорошо, но затем командная строка выдает ошибку

Could Not Find d:\test\test

для обоих последних двух файлов.

1 Ответ

0 голосов
/ 06 августа 2020

Согласно @ Комментарий @ Mofi , решение моей проблемы заключалось в использовании:

for /F "usebackq eol=| delims=" %i in ("d:\testfiles.txt") do del "%~i"
...