#batch-file #delete-file
#пакетный файл #удалить-file
Вопрос:
У нас есть сотни тысяч проиндексированных файлов в папках, которые разбиты по дням. У нас есть список имен файлов в файле csv, который нам нужно удалить. Какой скрипт я могу использовать для поиска этих файлов и их удаления? Если бы forfiles работал, как бы выглядел скрипт? Мы используем Windows Server.
Комментарии:
1. Больше шансов, что кто-нибудь скажет вам, как должен выглядеть скрипт, если вы сообщите нам, как выглядит файл CSV.
2. Файл мог быть переформатирован. Это список имен файлов, которые можно поместить в CSV или текстовый файл — в любом наиболее удобном формате. Спасибо!
Ответ №1:
Если ваш CSV-файл не содержит значений в кавычках, for
вы должны быть в состоянии справиться с этим. Например. если имена файлов находятся во втором столбце файла:
for /f "tokens=2 delims=," %%f in (foo.csv) do del "%%f"
Однако было бы полезно, если бы мы знали, как выглядит ваш файл.
Комментарии:
1. Это отличный однострочный пакетный скрипт!
Ответ №2:
Вам было бы намного лучше использовать powershell, если он доступен, поскольку в нем есть возможность открывать CSV-файлы «из коробки».
Лучше всего использоватьimport-csv, и вам не нужна консоль powershell — вы можете интегрировать powershell в существующий пакетный скрипт, просто вызвав powershell.exe из командной строки и вызов командлетов и скриптов оттуда.