新しい端末または新しいタブがある場合に起動するコマンド

新しい端末または新しいタブがある場合に起動するコマンド

実行コマンドにマップされたキーボードショートカットがありますgnome-terminal(Fedora 27を使用しています)。

開いている端末がない場合は新しい端末を開くにはこのキーが必要です。端末ウィンドウがすでに開いている場合は、既存の端末ウィンドウで新しいタブを開くにはこのキーを使用します。

これを行うコマンドは何ですか?

答え1

Fedoraの場合はわかりませんが、CentOSでは、Ctrl+Shift+tターミナルウィンドウを選択すると、新しいタブターミナルウィンドウを開くコマンドが実行されます。新しいウィンドウを開くには、先ほどのように縛らなければなりません!

答え2

どの端末が実行されているかを検出し、そのウィンドウにキーを送信する方法が必要です。そのうちのいくつかがあります。 xdotool(sudo dnf install xdotoolFedoraの場合)を使用することをお勧めします。

#!/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 ファイルに入れてからchmod 0755 ~/bin/gterm

これでgtermコマンドが準備されます。また、ショートカットにバインドすることもできます。

答え3

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

これで新しい端末が開き、「echo hello」コマンドが実行されます。

源泉

答え4

私はあなたが言ったように考えていました。コメント

gnome-terminal

ここに画像の説明を入力してください。

そのコードを実行すると、terminal既存のコードから別のコードが開きます。terminal

関連情報