Konsole 창에서 GUI 응용 프로그램을 시작했는데 완전히 쓸모없는 정보가 기록되었습니다. 나는 이것이 필요하지 않습니다. 이것을 완전히 막을 수 있는 방법이 있나요? 나는 부정하려고 노력했지만 도움이 되지 않았습니다. 나는 2>&1 >/dev/null이 도움이 될 것이라고 생각했지만 꽤 지루합니다!
자, 창의력을 발휘해 봅시다. 대답의 절반은 preexec를 사용하고(나는 zsh를 사용하지만 웹은 bash preexec 트릭으로 가득 차 있습니다) ldd
libX11을 탐지하는 것입니다(그 밖의 무엇입니까?). 그 다음에https://stackoverflow.com/a/9188571/308851/dev/null에 대한 리디렉션을 만드는 방법을 보여줍니다. 쉘 스크립트 래퍼가 있는 프로그램과 함께 작동하도록 이 솔루션을 어떻게 확장할 수 있습니까?
답변1
나는 이것이 지루하다는 것을 알고 있지만 귀하의 응용 프로그램에 자동으로 실행되는 옵션이 없다면 나는
./app > /dev/null 2>&1
항상 이것을 작성하고 싶지 않다면 쉘 구성 파일에서 자신만의 별칭을 만들 수 있습니다.
.bashrc - for bash
다음을 생성하고 별칭을 지정해야 합니다.
alias app="/usr/local/bin/app > /dev/null 2>&1"
.bash_profile을 업데이트한 후 다시 로그인하거나 ~/.bash_profile을 소스로 지정하고 애플리케이션을 호출하면 됩니다.
편집하다:Michael의 의견을 바탕으로 수정한 내용입니다. 실제로 2>&1은 /dev/null 뒤에 있습니다. 이것이 쉘과 관련이 있는지 궁금합니다.
답변2
zsh에서는 다음을 사용할 수 있습니다 &!
. 즉,
gui-app --args --args &!