배치 파일 실행 후 콘솔의 자동 폐쇄를 방지하는 방법
파일 실행 후 콘솔이 자동으로 닫히지 않도록 배치 파일 끝에 어떤 명령을 넣을 수 있습니까?
Windows / DOS 배치 파일에서 :
pause
이것은 좋은 "Press any key to continue . . . "
메시지를 인쇄 합니다
또는 "Press any key to continue . . ."
메시지를 원하지 않으면 대신 다음을 수행하십시오.
pause >nul
정확한 질문에 달려 있습니다!
일반적으로 .bat 파일 pause
내에서 작업을 수행 합니다.
당신이 원하는 경우 cmd.exe를이 입력, 사용 유지 할 수 닫습니다하지 cmd /k
파일의 끝에 명령을 사용합니다.
cmd.exe를 닫지 않고 계속 입력 할 수있게하려면
cmd /k
/k
Windows 웹 사이트에서 수행하는 작업 을 명확히해야 할 필요성을 느꼈습니다 .
/k
: 문자열로 지정된 명령을 수행하고 계속합니다.
따라서 cmd /k
bat 파일의 끝에 후속 명령이 없으면 cmd.exe
나중에 사용할 수 있도록 창을 열어 둡니다.
반면에 pause
배치 파일의 끝에서 프로세스를 일시 중지하고 cmd.exe
첫 번째 버튼을 누르면 종료 됩니다
배치 파일에 명령을 사용하는 아래의 방법은 새 명령 프롬프트 창을 열고 새 창은 자동으로 종료되지 않습니다.
start "title" call abcd.exe param1 param2
start "title" call xyz.exe param1 param2
Maven 을 사용 하고 있고 입력을 건너 뛰고 콘솔을 닫아서 결과를 확인하지 않으 CALL
려면 'mvn clean install'외에도 스크립트 에서 명령 을 사용해야합니다 .
이렇게하면 콘솔이 닫힙니다.
ECHO This is the wrong exemple
mvn clean install
pause
이와 같이 콘솔 은 계속 열려 있습니다
ECHO This is the right exemple
CALL mvn clean install
pause
CALL
명령을 사용하지 않으면 과거의 예제 중 어느 것도 작동하지 않습니다.
cmd.exe
실행할 코드 아래에 새 줄을 추가하십시오 .
c:\Python27\python D:\code\simple_http_server.py
cmd.exe
내 방법은 실제 배치 ( "foo.bat")를 작성하여 작업을 완료하는 것입니다. 그런 다음 다른 "start.bat"를 작성하십시오.
@echo off
cmd /k foo.bat
일회성 환경 변수를 설정할 때 이것이 매우 유용하다는 것을 알았습니다.
cmd
배치 파일 끝에서 호출 하십시오.
게다가 pause
.
set /p=
사용할 수 있습니다. 사용자 입력을 예상하고 Enter 키를 누르면 플로우를 해제합니다.
또는
runas /user:# "" >nul 2>&1
사용자 입력에서 아무것도 표시되지 않거나 명령 기록에 남아있는 것을 제외하고는 동일하게 수행됩니다.
가능성 1 : 2 개의 .bat 파일을 만들어 첫 번째 파일에 쓰기 만하면됩니다.
start <filename> // name of 2nd batch file
exit
배치 파일 2는 결국 닫히지 않는 파일입니다. 이제 배치 nr.1을 열면 두 번째가 시작되고 자체 복제됩니다. 두 번째가 끝나면 완전히 닫히지 않습니다 (끝에 출구를 두지 않는 한)
가능성 2 : 배치 파일 1 :
call <filename>
cls
echo End of file
pause
<any code you want>
두 번째 파일이 끝나면 파일 1로 다시 진행하여 나머지 파일을 출력합니다. 이를 통해 오류 처리기를 만들 수도 있습니다. nr.1이 충돌하면 nr.2로 이동하여 표시합니다
이 작은 핵은 사용자에게 키를 입력하도록 요청하고 변수 % exitkey %에 저장합니다 (이 변수는 원하는대로 호출 할 수 있음).
set /p exitkey= "Press any key to continue..."
NB : '='뒤의 공간이 매우 중요합니다
pause
또는
echo text to display
pause>nul
늦었다는 것을 알고 있지만 선호하는 방법은 다음과 같습니다.
:programend
pause>nul
GOTO programend
이런 식으로 사용자는 enter를 사용하여 종료 할 수 없습니다.
여기에 답변에 문제가 있었 으므로이 문제를 해결했습니다.
cmd /c node_modules\.bin\tsc
cmd /c node rollup_build.js
pause
사용 사례에 따라 두 가지 방법이 있습니다.
1) 실행 결과를보고 나중에 닫을 수 있도록 Windows cmd 프롬프트를 열어 두려면 사용하다
pause
2) Windows cmd 프롬프트를 열어두고 명령 후 일부 명령을 실행할 수 있도록하려면; 사용하다
cmd
마지막 박쥐 라인에 cmd를 추가하십시오. 시스템 경로를 재설정하거나 지우면 다음과 같이 전체 경로로 cmd를 시작해야합니다.
%windir%\system32\cmd.exe
예를 들어 jdk를 이전 버전으로 재설정하는 박쥐 파일이 있습니다.
PATH=C:\Program Files\Java\jdk1.6.0_45\bin;C:\apache-ant-1.7.1\bin
SET JAVA_HOME=C:\Program Files\Java\jdk1.6.0_45
%windir%\system32\cmd.exe
시스템 경로를 재설정 했으므로 전체 경로로 cmd를 실행해야하거나 시스템이 cmd.exe를 찾을 수 없습니다 .cmd를 실행하지 못하고 창을 닫으면 오류 메시지가 표시되지 않습니다. .
'development' 카테고리의 다른 글
Java 인터페이스에서 정적 메소드를 정의 할 수없는 이유는 무엇입니까? (0) | 2020.02.14 |
---|---|
Git 리포지토리의 리모컨 목록? (0) | 2020.02.14 |
OS X 터미널 색상 (0) | 2020.02.14 |
HTTP 프록시를 통해 Git 저장소에서 어떻게 가져 옵니까? (0) | 2020.02.14 |
자바 스크립트로 쿠키 설정 및 쿠키 받기 (0) | 2020.02.14 |