Так как for /R %%x in (.)
собирается вернуть родительский каталог в первой итерации, вы можете использовать флагоподобную переменную, чтобы пропустить команду copy
при выполнении условия if
в первом циклеитерация, подобная этой:
set "FLAG="
for /R %%x in (.) do (
if defined FLAG (
copy "file.otf" "%%~x"
) else (
set "FLAG=#"
)
)
Согласно Squashman комментарий , еще более простым вариантом будет использование for /D /R
только для перечисленияподкаталоги:
for /D /R %%x in (*) do (
copy "file.otf" "%%~x"
)