Хотя это будет проходить по дереву каталогов:
for /R %f in (main.css) do @echo "%f"
На самом деле оно не соответствует именам файлов.То есть, если у вас есть дерево:
DirectoryA
A1
A2
, операция for / R даст% f из DirectoryA / main.css , тогда DirectoryA / A1 / main.css и т. Д., Даже если main.css не находится ни в одном из этих каталогов.Поэтому, чтобы быть уверенным, что файл (или каталог) действительно существует, вы должны сделать следующее:
for /R %f in (main.css) do @IF EXIST %f @echo "%f"
Также имейте в виду, что вам нужно указать имя файла в кавычках, потому что если путь или файл содержит пробелыпрогулка по каталогу может взорваться.
Выше, по крайней мере, как это работает в Windows 8.