UFO ET IT

배치 파일 실행 후 콘솔 자동 닫힘 방지 방법

ufoet 2023. 4. 8. 12:05
반응형

배치 파일 실행 후 콘솔 자동 닫힘 방지 방법

배치 파일 실행 후 콘솔이 자동으로 닫히지 않도록 하려면 배치 파일 끝에 어떤 명령을 넣어야 합니까?

Windows/DOS 배치 파일의 경우:

pause

은 멋진 입니다."Press any key to continue . . . "

싫으면 싫으면 싫으면 싫으면 싫으면 싫으면 싫으면."Press any key to continue . . ."메시지 대신 다음을 수행합니다.

pause >nul

정확한 질문에 따라 다르죠!

통상은 「」입니다.pause는 .bat 파일 내에서 작업을 수행합니다.

cmd.exe를 닫지 않고 입력 상태를 유지하려면cmd /k명령어를 입력합니다.

할 수 cmd를 합니다.exe는 " " " " 입니다.cmd /k

내용인지 할 느꼈습니다./k(Windows 사사트에:) :

/k: 문자열로 지정된 명령을 수행하고 계속합니다.

★★★★★★★★★★★★★★★★★.cmd /k up 명령어를 follow up은 유지됩니다.cmd.exe추가 사용을 위해 창을 엽니다.

★★★★★★★★★★★★★★★★.pause에 프로세스를 하고, 「종료」를 실시합니다.cmd.exe 번째 에서 을 누릅니다.

Maven을 사용하는 경우 입력을 건너뛰고 콘솔이 닫히지 않도록 하려면 다음 명령을 사용해야 합니다.CALL install.mvn 명령어는 '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과거의 예로는 통하지 않는다.로 다른 경우는 을할 때 를 그이므로 .호출하는 것과 mvn은 를 호출합니다.

배치 파일에 명령어를 저장하는 다음 방법에서는 새로운 명령어프롬프트 창이 열리고 새로운 창이 자동으로 종료되지 않습니다.

start "title" call abcd.exe param1 param2  
start "title" call xyz.exe param1 param2

cmd.exe실행할 코드 아래의 새 행으로 지정합니다.

c:\Python27\python D:\code\simple_http_server.py

cmd.exe

실제 배치("foo.bat")를 작성하여 작업을 완료한 후 다른 "start.bat"를 만듭니다.

@echo off
cmd /k foo.bat

이것은 일회성 환경변수를 설정할 때 매우 유용합니다.

★★cmd를 참조해 주세요.

여기서의 답변에 문제가 있어, 다음과 같은 것을 생각해 냈습니다(TM).

cmd /c node_modules\.bin\tsc
cmd /c node rollup_build.js
pause

외에pause.

set /p=

를 사용할 수 있습니다.사용자 입력을 예상하고 Enter 키를 누르면 플로우가 해제됩니다.

또는

runas /user:# "" >nul 2>&1

사용자 입력에서 아무것도 표시되지 않거나 명령어 이력에 남아 있지 않은 것을 제외하고 동일한 작업을 수행합니다.

이 작은 해킹은 사용자에게 키를 입력하도록 요구하여 변수 %exitkey%에 저장합니다(이 변수는 원하는 이름으로 불릴 수 있습니다).

set /p exitkey= "Press any key to continue..."

주의: '=' 뒤의 공간이 매우 중요합니다.

늦은 건 알지만 내가 선호하는 방법은:

:programend
pause>nul
GOTO programend

이렇게 하면 사용자는 Enter 키를 사용하여 종료할 수 없습니다.

가능성 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로 이행하여 표시합니다.

사용 사례에 따라 두 가지 방법이 있습니다.

1) Windows cmd 프롬프트를 열어 두고 실행 결과를 보고 나중에 닫으려면 를 사용합니다.

pause

2) Windows cmd 프롬프트가 열린 채로 명령어를 실행할 수 있도록 하려면 를 사용합니다.

cmd

여기에 이미지 설명 입력

pause

또는

echo text to display
pause>nul

마지막 줄에 cmd를 쉽게 추가할 수 있지만 시스템 경로를 재설정하거나 클리어할 경우 다음과 같이 cmd를 전체 경로로 시작해야 합니다.

%windir%\system32\cmd.exe

예를 들어 다음과 같이 jdk를 이전 버전으로 리셋하기 위한 bat 파일이 있습니다.

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는 실행되지 않고 창만 닫으면 오류 메시지가 표시되지 않습니다.

.exe 파일을 실행하고 cmd를 일시 중지합니다.

배치 스크립트의 예:

@echo off
myProgram.exe
PAUSE

인수가 있는 배치스크립트의 예:

@echo off
myProgram.exe argumentExample1 argumentExample2
PAUSE

나는 덧붙였다.@echo off제가 보여드리고 싶지 않아서C:\user\Desktop>myProgram.exe그리고.C:\user\Desktop>PAUSEcmd로

cmd /k cd C:\프로젝트.....

cmd를 특정 롱 로케이션에서 여는 경우

add pause (다른 것을 표시하지 않을 경우 add)> nul
다음과 같이 표시됩니다.

@오프
제목 멋지다
에코 헬로
일시정지 > null

'안녕하세요'라는 말밖에 안 나와요

저는 개인적으로pause >nul콘솔에 추가 텍스트를 표시하지 않고 키가 눌릴 때까지 기다립니다.

using : call your batch.batch.displays

작업이 스크립트를 처리한 후 동일한 창(예: 인스턴스)에서 다른 코드를 계속 전송합니까?

언급URL : https://stackoverflow.com/questions/988403/how-to-prevent-auto-closing-of-console-after-the-execution-of-batch-file

반응형