2013-07-25 1 views
0

리눅스에서 Windows 프로그램을 실행하려고하는데, 그 프로세스에서 출력 (stdout)을 얻고 싶습니다. 이 텍스트를 .sh 파일에 넣습니다. wine Blockland.exe ptlaaxobimwroe -dedicated -port 30000 >> consoleLog.txt 프로그램을 실행했지만 빈 파일이 생성되었습니다. 이 명령은 터미널 창에서 직접 실행될 때 항상 작동합니다. 그래서 .sh 스크립트에서 파일에 출력을 출력하지 않는 이유는 무엇입니까?리눅스 : .sh 스크립트의 프로그램 출력 없음

+0

셸 스크립트의 나머지 부분과 실행 방법을 보여줍니다. – siride

답변

0

출력을 표준 오류로 보낼 수 있습니다. 이 가능성을 설명하기 위해, 2>&1 비트가 표준 출력 (파일 기술자 1)에 표준 에러 (파일 기술자 2) 리디렉션

wine Blockland.exe ptlaaxobimwroe -dedicated -port 30000 2>&1 >>consoleLog.txt 

보십시오. 그런 다음 stdout (stderr 출력 포함)을 로그 파일로 리디렉션합니다.

+0

터미널에 입력 할 때 항상 출력을 파일에 올바르게 기록합니다. 쉘 스크립트에서 작동하지 않는 이유는 무엇입니까? – hammereditor