Я запускаю функцию 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
устройство&
отправляет программу на задний план