GUI プログラムのターミナル出力を無音にする

GUI プログラムのターミナル出力を無音にする

私は zsh 関数を実行して、.tex ファイルを vim で開き、関連する .pdf ファイルを evince で開いています。現在、xdotool を使用して現在の gnome-terminal ウィンドウで新しいタブを開き、そのタブで vim を実行しています。evince のコマンド ライン出力を黙らせて、現在のウィンドウで vim を開きたいです。

残念ながら、 などの標準リダイレクトではevince name.pdf &> /dev/null、evince はグラフィカルに開きません。ターミナルに標準出力/エラーを表示せずに、ターミナルから 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

リダイレクトするにはのみ証拠のstderr/dev/null そして同時にバックグラウンドに送信するには、以下を指定する必要があります。

evince name.pdf 2> /dev/null &

どこ :

  • evince name.pdf 2>エラーの出力のみをリダイレクトします
  • /dev/null出力をnullデバイスにリダイレクトします
  • &プログラムをバックグラウンドに送る

関連情報