내 애플리케이션에서 Firefox를 실행한다고 가정해 보겠습니다. stdout 및 stderr은 특정 파일로 리디렉션됩니까, 아니면 /dev/null
? 특정 파일로 리디렉션되는 경우 stdout 및 stdin이 리디렉션되는 위치를 알지 못한 채 터미널에서 애플리케이션(예: nohup 및 disown)을 실행하는 방법도 알고 싶습니다. 즉, 터미널에서 독립 실행형 프로세스로 직접 실행하는 대신 데스크톱에 애플리케이션을 실행하도록 지시하는 방법은 무엇입니까? 물론 로 리디렉션하면 /dev/null
및 nohup APP >/dev/null 2>&1
로 & disown
충분합니다.
답변1
일반적으로 데스크탑 환경 구성 요소의 표준 출력 및 오류는 ~/.xsession-errors
기본적으로 유사한 파일로 리디렉션되며(배포판에 따라 다를 수 있음) GUI를 통해 Firefox와 같은 응용 프로그램을 시작하면 이 리디렉션이 상속됩니다.
GUI 애플리케이션의 표준 입력은 일반적으로 /dev/null
.
하지만 당신이 원하는 것은 무엇이든 할 수 있습니다.
리디렉션은 /dev/null
유효한 옵션이자 일반적인 선택입니다. 특히 GUI 응용 프로그램이 stdout/stderr에서 생성할 수 있는 디버그 출력에 관심이 없거나 문제의 응용 프로그램이 출력을 생성하지 않는다는 것을 알고 있는 경우에는 더욱 그렇습니다.