Я не работал с DOS, так как в Unix всегда были скрипты с оболочкой, которые были более мощными. В первый раз я работаю над Windows и мало знаю о сценарии DOS/Batch.Как устанавливается этот уровень ошибок?
Я пытался написать небольшой скрипт для перезагрузки удаленной машины. При создании сценария ученого я узнал об окружающей среде var% ERRORLEVEL%, которая является видом кода возврата из последней управляемой команды.
В Unix, если команда запущена, но не создает результат желания или некоторую ошибку msg, код ошибки не равен нулю. Как я пытаюсь удаленное выключение и предоставление хоста, которого нет в сети. В нем говорится, что «Сетевой путь не найден», но% ERRORLEVEL% по-прежнему равен нулю. Который целиком задает этот вопрос.
Нужно ли захватить что-то другое, чем% ERRORLEVEL%, так как Zero предназначен для успешной успешной команды и не изменяет% ERRORLEVEL% при метании «Сетевой путь не найден», что я должен сделать, чтобы получить это право?
shutdown command I am using:
shutdown -r -f -t %DELAYOF% -m \\%COMPNAME% -c %COMMENT%
Когда я даю недопустимое значение дает% COMPNAME%, это подсказка говорит «сетевой путь не найден», но% EERORLEVEL% не изменяется.
Какова команда, которую вы выполняете (перед тестированием ERRORLEVEL)? – hometoast
Какая версия Windows? –
Дважды проверьте, что переменная среды с именем ERRORLEVEL не назначена (если она% ERRORLEVEL% не будет работать). Вы можете сделать это с помощью команды SET без аргументов, которые будут отображать все текущие переменные среды. –