
В настоящее время у меня возникли проблемы при попытке удалить некоторые файлы в скрипте cmd.
У меня есть следующее:
for /d %%A in (C:\Users\*) do for /d %%B in (%%A\test\*) do echo %%B
Хотя мне нужно удалить выходные файлы, а не перечислить их
Я пытался:
for /d %%A in (C:\Users\*) do for /d %%B in (%%A\test\*) do del %%B
Но это не сработало.
решение1
Добавьте кавычки, %%B
например, for /d %%A
in ( C:\Users*
) do for /d %%B
in %%A\test*
dodel "%%B"
решение2
В дополнение к ответу Макса вы также можете использовать скобки, чтобы сделать пакетный файл более удобным для чтения. Вы также должны использовать строчные имена переменных.
@echo off
setlocal EnableDelayedExpansion
for /d %%a in (C:\Users\*) do (
rem echo "directory: %%a"
for /f %%b in ("%%a\test\*") do (
echo "%%b"
del "%%b"
)
)