cmd.exe 프롬프트 오류 메시지가 닫히지 않도록 하려면 어떻게 해야 합니까?

cmd.exe 프롬프트 오류 메시지가 닫히지 않도록 하려면 어떻게 해야 합니까?

cmd.exe를 통해 실행되는 .exe는 실행된 다음 오류 메시지를 읽기 전에 빠르게 사라집니다. cmd.exe 창과 오류 메시지가 닫히지 않게 하려면 어떻게 해야 합니까? 아니면 방금 발생한 오류 정보를 기록할 수 있는 방법이 있나요? 감사해요.

답변1

콘솔을 시작하는 프로그램을 시작하면 CMD가 더 이상 필요하지 않기 때문에 실제로 창이 닫힙니다.

키를 누르고 start입력 cmd한 후 Enter를 누르면 명령 프롬프트가 시작됩니다.

C:에 없으면 프로그램이 있는 드라이브 문자를 누르고 :를 누른 다음 Enter를 누르십시오.

아래 예에서 끝에 있는 _는 커서를 나타냅니다.

예:

C:\Users\User>D:_

D:\>_

이제 명령을 사용하여 cd프로그램 디렉터리로 이동합니다. 을 눌러 이름을 자동 완성할 수 있습니다 tab. tab해당 폴더가 있으면 도구 도 만들 것입니다.

예:

D:\>cd Tools_

D:\Tools>cd "My Program"_   <- type 'My' and press tab to Autocomplete to "My Program"

D:\Tools\My Program>_

이제 실행하려는 프로그램의 이름을 입력하십시오.

예:

D:\Tools\My Program>program_
Hello, I am the error message you want to see.

D:\Tools\My Program>_

답변2

일반적으로 이 작업을 수행해야 할 때 동일한 폴더에 bat 파일을 만들고(새 텍스트 파일의 이름을 everything.bat로 변경) 텍스트 폴더에서 열고 다음을 입력합니다.

ProgramName.exe
Pause

닫고 저장한 다음 bat 파일을 실행하면 열린 상태로 유지됩니다!

답변3

.bat 파일을 사용하여 해당 exe를 실행할 수 있습니다.

또한 cmd에서 다음 명령을 사용하여 해당 exe 파일의 오류/출력을 텍스트 파일에 기록할 수 있습니다.

myFile.exe >> "C:\logFile.txt"

두 배보다 큰 기호는 기존 파일 ">"에 추가되지만 단일 기호는 기존 파일 ">"을 덮어씁니다.

이것이 오류를 기록하는 데 도움이 되기를 바랍니다.

답변4

이에 따르면:

|| [...] 명령1 || command2 다음 명령을 실행하는 데 사용 || || 앞의 명령이 있는 경우에만 실패합니다. Cmd.exe는 첫 번째 명령을 실행한 다음 첫 번째 명령이 성공적으로 완료되지 않은 경우(0보다 큰 오류 코드 수신)에만 두 번째 명령을 실행합니다.

해당 .exe를 만드는 경우 pause문장 뒤에 명령만 입력하면 됩니다.

그리고 bash를 호출하는 C++의 예는 다음과 같습니다.

#include <iostream>
#include <windows.h>


using namespace std;

int main()
{
    system("cd  akfhaskfn|| pause");
    system("cd  || pause");

    return 0;
}

첫 번째 명령만 일시 중지 명령을 호출하는 것을 볼 수 있습니다.

관련 정보