다양한 목적으로 배치 스크립트를 만들고 있는데, 명령이 완료된 후 결과를 선언하는 메시지 대화 상자가 표시되도록 만들고 싶습니다.
예를 들어, 특정 개체를 삭제하는 스크립트를 만들면 사용자 정의 대화 상자가 표시되도록 하고 싶습니다. 창 제목과 텍스트 값에 다음 형식을 사용하고 싶습니다.
x=msgbox("%MESSAGE%" ,0, "%TITLE%")
표시할 스크립트에 이 내용(위)을 어떻게 추가할 수 있나요?~ 후에작업(아래)이 완료되었나요?
rmdir "%TARGETPATH%
답변1
명령을 사용할 수 있습니다리디렉션또는 첫 번째 명령이 완료된 후 진행 명령을 실행합니다 &&
. &
첫 번째 명령이 성공한 후에 진행 명령을 실행하도록 설정할 수도 있고, 첫 번째 명령 결과와 상관없이 첫 번째 명령이 실행된 직후에 계속 명령을 실행하도록 설정할 수도 있습니다.
비결은 배치 스크립트에 VB를 배치하는 것입니다.msgBox나중에 다음을 통해 실행될 임시 스크립트에 사용되는 함수 및 적용 가능한 값wscript.
이 모든 기능은 타사 도구를 설치하지 않고도 즉시 사용할 수 있으므로윈도우토종의.
배치 스크립트
메모: 이것이 작동하려면 가지고 있는 구문이 아닌 의 구문을 사용해야 SET x=msgbox "%TITLE%",0,"%MESSAGE%"
하지만 이는 사소한 조정일 뿐입니다.
@ECHO ON
:Routine1
SET TARGETPATH=C:\Path\Folder
SET COMMAND=rmdir "%TARGETPATH%
SET TITLE=This is my message title
SET MESSAGE=This is my message body
SET tmpmsgbox=%temp%\~tmpmsgbox.vbs
SET x=msgbox "%MESSAGE%",0,"%TITLE%"
ECHO %x%>"%tmpmsgbox%"
%COMMAND% && WSCRIPT "%tmpmsgbox%"
EXIT
commandA & commandB Run commandA and then run commandB commandA && commandB Run commandA, if it succeeds then run commandB