靜默 GUI 程式的終端輸出

靜默 GUI 程式的終端輸出

我正在運行 zsh 函數來在 vim 中打開 .tex 文件,同時打開其相關的 .pdf 文件。我目前正在使用 xdotool 在當前 gnome 終端機視窗中開啟一個新選項卡,然後在該選項卡中執行 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

重定向僅有的證據的標準錯誤/dev/null 發送到後台的同時需要指定:

evince name.pdf 2> /dev/null &

在哪裡 :

  • evince name.pdf 2>僅重定向錯誤的輸出
  • /dev/null將輸出重定向到null設備
  • &將程式傳送到後台

相關內容