Это похоже на простой вопрос, но что делает «^» в пакетном режиме? Я делаю что-то похожее на следующий код (скопированный с here). Файл someFile.txt содержит имена файлов для сохранения, а «папка» - это каталог, из которого можно удалить все файлы , а не, упомянутые в файле someFile.txt. Почему этот код не работает, когда ^
удален с ^|
в заявлении for
. Кроме того, почему не может быть заключено выражение do
в ()
, чтобы создать более длинное выражение?Что делает «^» в пакетном скрипте
@echo off
setlocal
set folder="c:\somePath"
set excludeFile="c:\somePath2\someFile.txt"
for /f "eol=: delims=" %%F in ('dir /b /a-d %folder% ^| findstr /vibg:%excludeFile%') do del "%folder%\%%F"
so^разрешает выражение dir для оценки перед трубопроводом? А о нем(), выражение внутри() должно оставаться в одной строке или что-то еще? O я получаю его, потому что его строка, '|' вызовет немедленный выход – jenesaisquoi
yup. первая половина из них будет imediatly труба до половины sencond без начала for. – nephi12