Silence GUI 프로그램의 터미널 출력

Silence GUI 프로그램의 터미널 출력

vim에서 .tex 파일을 열면서 관련 .pdf 파일을 evince에서 여는 zsh 함수를 실행하고 있습니다. 현재 xdotool을 사용하여 현재 그놈 터미널 창에서 새 탭을 연 다음 해당 탭에서 vim을 실행하고 있습니다. 차라리 evince의 명령줄 출력을 무음으로 설정하고 현재 창에서 vim을 열고 싶습니다.

안타깝게도 와 같은 표준 리디렉션을 사용하면 evince name.pdf &> /dev/nullevince가 그래픽으로 열리지 않습니다. 해당 터미널에 표준 출력/오류가 발생하지 않고 터미널에서 GUI 프로그램을 실행할 수 있습니까?

기능은 아래와 같습니다:

edittex () { 
    # open a new terminal tab in current terminal
    WID=$(xprop -root | grep "_NET_ACTIVE_WINDOW(WINDOW)"| awk '{print $5}')
    xdotool windowfocus $WID
    xdotool key ctrl+shift+t
    wmctrl -i -a $WID
    # open vim in the new terminal tab
    xdotool type "vim [email protected]"
    xdotool key KP_Enter 
    # open evince in old terminal tab
    evince "[email protected]" 
}

사용법: edittex filename.pdf 및 .tex 파일의 이름이 filename.pdf 및 filename.tex라고 가정합니다.

답변1

리디렉션하려면오직증거의 표준 오류/dev/null 그리고다음을 지정해야 하는 동시에 백그라운드로 보냅니다.

evince name.pdf 2> /dev/null &

어디 :

  • evince name.pdf 2>오류 출력만 리디렉션합니다.
  • /dev/null출력을 null장치 로 리디렉션합니다.
  • &프로그램을 백그라운드로 보냅니다.

관련 정보