#batch-file
#пакетный файл
Вопрос:
как я могу передать вывод (из cli-php) в аргумент bat-файла, пример:
@echo off
php myScript.php > %%1
rmdir /S /Q %%1
Я знаю, что могу удалить файл, используя только php.
с уважением,
//t
Ответ №1:
Таким же образом вы записываете вывод любой команды в переменную:
FOR /F %%A IN ('command') DO ...
Вам необходимо установить соответствующие параметры FOR /F для анализа / сохранения значений, которые вы хотите. В этом случае вы, вероятно, захотите "DELIMS="
, чтобы путь содержал пробелы.
@echo off
for /f "delims=" %%A in ('php myScript.php') do rmdir /s /q "%%~A"
Я полагаю, что путь может начинаться с точки с запятой, что приведет к игнорированию вывода FOR /F по умолчанию "EOL=;"
. Путь не может начинаться с двоеточия, поэтому вы можете установить "EOL=:"
просто для безопасности:
@echo off
for /f "eol=: delims=" %%A in ('php myScript.php') do rmdir /s /q "%%~A"