program story

배치 파일 : 콘솔 창을 열어 두는 방법

inputbox 2020. 8. 18. 07:41
반응형

배치 파일 : 콘솔 창을 열어 두는 방법


두 개의 배치 파일이 있는데 그중 하나는 다른 파일을 실행합니다.

  1. "내 배치 파일"> 2. "다른 배치 파일"

첫 번째 배치 파일의 바로 가기를 만들고 다음과 같은 방식으로 호출하도록 속성을 편집했습니다.

cmd.exe /k "<SomePath>\<My Batch File>.bat" & pause

원하는 작업 배치 파일 실행이 끝난 후 콘솔 창이 열리기를 원합니다. 이제는 닫히고 cmd 플래그 주위에서 재생하려고 시도했지만 결과가 없습니다.

플랫폼 : Windows7


업데이트 1

구조를 수정했습니다. 이와 같은 간단한 예제도 잘 작동하지 않습니다. 하나의 배치 파일 만 있습니다. 즉, 2 개의 배치 파일이 없습니다. "Some Other Batch File"유일한 배치 파일에는 이와 같은 smth가 포함되어 있습니다.

start /B /LOW /WAIT make package
cmd /K

업데이트 2

탐색기에서 호출되는 동일한 바로 가기는 콘솔 창을 닫지 않습니다. 그러나 작업 표시 줄의 고정 된 항목에서 바로 가기를 호출하면 콘솔 창이 닫힙니다.

콘솔 창을 열어 두는 방법에 대한 아이디어가 있습니까?


그 정말 모든 배치 파일이하고있는 경우에는 제거 cmd /K및 추가 PAUSE.

start /B /LOW /WAIT make package
PAUSE

그런 다음 바로 가기를 "My Batch File.bat"...로 지정할 필요가 없습니다 CMD /K.

최신 정보

아, 새로운 정보가 있습니다. 작업 표시 줄에 고정 된 바로 가기에서 수행하려고합니다.

아래 관련 부분이 있는 Vista / XP Quick Launch와 같은 Windows 7 작업 표시 줄에 배치 파일 추가 라는 것을 발견했습니다 .

  1. 먼저 CMD.EXE시작 버튼을 눌러 작업 표시 줄에 대한 바로 가기를 고정한 다음 검색 상자에 "cmd"를 입력하고 결과를 마우스 오른쪽 단추로 클릭 한 다음 "작업 표시 줄에 고정"을 선택합니다.
  2. 작업 표시 줄의 바로 가기를 마우스 오른쪽 버튼으로 클릭합니다.
  3. " 명령 프롬프트 "및 " 작업 표시 줄에서이 프로그램 고정 해제 " 가 포함 된 목록 이 표시 됩니다.
  4. 아이콘을 마우스 오른쪽 버튼으로 클릭하고을 CMD.EXE선택 Properties합니다.
  5. 대상 상자에서 끝으로 이동 하여 배치 파일의 경로와 이름을 "%SystemRoot%\system32\cmd.exe"입력 " /C "합니다.

목적에 따라 다음 중 하나를 수행 할 수 있습니다.

  1. 배치 파일 끝에 /Ca PAUSE사용 하고 넣으 십시오.

    또는

  2. 사용할 명령 줄을 변경하고 배치 파일에서를 /K제거 PAUSE합니다.

여기에:

cmd.exe /k "<SomePath>\<My Batch File>.bat" & pause

무엇을하고 있는지 살펴보십시오.

  1. (cmd / K) cmd 인스턴스를 시작 합니다.
  2. (& pause) CURRENT cmd 인스턴스를 일시 중지 합니다 .

어떻게 해결합니까? 올바른 구문을 사용하여 새 CMD 인스턴스에 대한 인수를 포함합니다.

cmd.exe /k ""<SomePath>\<My Batch File>.bat" & pause"

방금 마지막 줄을 Pause 로 작성 했습니다. .bat 및 .cmd 모두에서 잘 작동했습니다. '계속하려면 아무 키나 누르십시오'라는 메시지도 표시됩니다.


열어 놓으려는 배치 파일의 마지막 줄에

pause >nul


콘솔 창을 열어 두려면 배치 파일의 마지막 명령 줄에만 추가하면됩니다.

' & pause'

넌 그냥 넣을 수 있습니다 pause명령을 배치 파일의 마지막 줄에 :

@echo off
echo Hey, I'm just doing some work for you.
pause

출력으로 다음과 같은 것을 제공합니다.

이봐, 난 그냥 너를 위해 일하는거야.

계속하려면 아무 키나 누르십시오 ...

Note: Using the @echo prevents to output the command before the output is printed.


rem Just use "pause" at the end of the batch file.
...
......
.......
pause

put at the end it will reopen your console

start cmd 

I just press enter and type Pause and it works fine

참고URL : https://stackoverflow.com/questions/13746177/batch-files-how-to-leave-the-console-window-open

반응형