У меня есть cmd.exe сценарий:Добавить, если заявление cmd.exe сценарий
FOR /F "tokens=5 delims==<ms" %i IN ('ping -n 1 -4 host1.internal ^|find "Reply from"') DO @echo %i
В основном, она возвращает значение звона в host1.internal без чего-либо еще. Я хочу добавить инструкцию if else, чтобы возвращаемое значение было пустым пространством, затем верните 0.
Я попытался сделать это вот так: ... DO IF %i (@echo %i) IF NOT %i (@echo 0)
, но он возвращает (was unexpected at this time
, и это довольно запутанно.
Спасибо.
Прошу прощения, но все 4 ответа, которые в настоящее время опубликованы, на самом деле не помогают. Мне нужен точный ответ, который получает скрипт, и если ping не был успешным, тогда верните 0. В качестве примера выполните pinging google. com, он должен вернуть «10» (как в 10 мс) и выполнить pinging notexistinghost.com, он должен вернуть «0». –
В этом случае, я думаю, ваша проблема в том, что если нет совпадений, ничего не выполняется. Вам придется думать, что ваш код по-другому. Я смутился тем решением, которое вы попробовали. –