добавить все файлы с именем johnsfiles.txt - PullRequest
0 голосов
/ 30 июня 2011

Я хотел бы добавить все файлы с именем johnsfiles.txt на мой диск c.

То есть каждый файл с этим именем независимо от подкаталогов

Как мне этого добиться?

Ответы [ 3 ]

1 голос
/ 01 июля 2011
del allofjohnsfiles.txt
for /R %%a in (johnsfiles.txt) do type %%a >> allofjohnsfiles.txt
1 голос
/ 01 июля 2011

@ Ryan Bemrose Решение хорошо в том, что оно даст ожидаемый результат (объединенное содержимое всех найденных файлов johnsfiles.txt).Однако это также может привести к нескольким сообщениям об ошибках отсутствующих файлов.Дело в том, что цикл FOR /R ведет себя по-разному, в зависимости от того, указана ли в скобках маска или фактическое имя .В первом случае он будет перебирать только найденные файлы, в то время как во втором случае он «найдет» указанный файл во всех папках ветви, включая те, которые фактически не связываются с файлом.Похоже, что имя полностью игнорируется, и команда просто перебирает все подпапки.

Это немного странно, и я не смог преодолеть его иначе, чем используя вывод команды DIR /S /B впетля, как это:

@ECHO OFF
TYPE NUL >allofjohnsfiles.txt
FOR /F %%a IN ('DIR /S /B johnsfiles.txt') DO TYPE "%%a" >>allofjohnsfiles.txt
0 голосов
/ 30 июня 2011

попробуй

dir /s /B johnsfiles.txt > index.txt
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...