필자는 유닉스에서 항상 더 강력한 쉘 스크립팅이 있었기 때문에 DOS로 작업하지 않았다. 처음으로 나는 Windows에서 일하고 DOS/Batch 스크립트에 대해 많이 모른다.이 오류 수준을 설정하는 방법은 무엇입니까?
원격 컴퓨터를 다시 시작하기 위해 작은 스크립트를 작성하려고했습니다. 스크립트를 정교하게 만들면서 마지막 실행 명령의 반환 코드 종류 인 환경 변수 %% ERRORLEVEL %에 대해 알게되었습니다.
명령이 실행되었지만 원하는 결과 또는 일부 오류 msg가 생성되지 않으면 Unix에서 오류 코드가 0이 아닙니다. 원격 종료를 시도하고 네트워크에 존재하지 않는 호스트를 제공하고 있습니다. "네트워크 경로를 찾을 수 없습니다."하지만 % ERRORLEVEL %은 여전히 0입니다. 이 질문을하는 것이 요점입니다.
가 던지는 때 나는 "네트워크 경로를 찾을 수 없습니다"후 % ERRORLEVEL %, 제로로 지정되어 다른 무언가를 캡처해야 성공적으로 명령을 실행하고이 % ERRORLEVEL %의 변경되지 마십시오 내가이 권리를 얻기 위해 캡처해야합니까?shutdown command I am using:
shutdown -r -f -t %DELAYOF% -m \\%COMPNAME% -c %COMMENT%
내가 잘못된 값을 제공
는 프롬프트 "을 (를) 찾을 수 없습니다 네트워크 경로"그러나 %의 EERORLEVEL의 %가 변경되지 않는 말한다 %의 COMPNAME의 %를 제공합니다.
ERRORLEVEL을 테스트하기 전에 실행중인 명령은 무엇입니까? – hometoast
어떤 버전의 Windows? –
ERRORLEVEL 환경 변수가 할당되지 않았는지 다시 확인하십시오 (% ERRORLEVEL %이면 작동하지 않음). 인수없이 SET 명령을 사용하면 모든 현재 환경 변수가 표시됩니다. –