用于启动新终端或新选项卡(如果存在)的命令

用于启动新终端或新选项卡(如果存在)的命令

我有一个映射到运行命令的键盘快捷键gnome-terminal(我使用的是 Fedora 27)。

我希望这个键,如果没有打开终端,将打开一个新终端,但如果终端窗口已打开,则在现有终端窗口上打开一个新选项卡。

执行此操作的命令是什么?

答案1

对于 Fedora 我不太确定,但在 CentOS 上,打开新选项卡式终端窗口的命令是Ctrl+Shift+t在选择终端窗口时!至于打开一个新窗口,你必须像你所做的那样绑定它!

答案2

您需要一种方法来检测正在运行的终端并将密钥发送到该窗口。其中有好几个。我建议你使用 xdotool (sudo dnf install xdotool适用于 Fedora)

#!/bin/sh
EW=$(xdotool search --onlyvisible --classname Gnome-terminal|head -1)

if [[ -z  $EW ]]
then
 gnome-terminal &
else
 xdotool windowactivate --sync  $EW
 xdotool key --clearmodifiers ctrl+shift+t
fi

将上面的代码放入 ~/bin/gterm 文件中,然后 makechmod 0755 ~/bin/gterm

之后 gterm 命令就准备好了。此外,您可以将其绑定到快捷方式。

答案3

osascript -e 'tell app "Terminal"
    do script "echo hello"
end tell'

这将打开一个新终端并在其中执行命令“echo hello”。

来源

答案4

我在想正如你所说评论

gnome-terminal

在此输入图像描述

如果您运行该代码,它将terminal从现有的中打开另一个terminal

相关内容