Lan*_*ton 5 command-line bash gnome-terminal zsh xdotool
我正在运行 zsh 函数以在 vim 中打开 .tex 文件,同时在 evince 中打开其相关的 .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 $@.tex"
xdotool key KP_Enter
# open evince in old terminal tab
evince "$@.pdf"
}
Run Code Online (Sandbox Code Playgroud)
用法:edittex filename
,假设 .pdf 和 .tex 文件被命名为 filename.pdf 和 filename.tex。
要仅将 evince 的 stderr重定向到/dev/null
并同时将其发送到后台,您需要指定:
evince name.pdf 2> /dev/null &
Run Code Online (Sandbox Code Playgroud)
在哪里 :
evince name.pdf 2>
仅重定向错误的输出/dev/null
将输出重定向到null
设备&
将程序发送到后台 归档时间: |
|
查看次数: |
1235 次 |
最近记录: |