
У меня есть сочетание клавиш, назначенное для запуска этой команды 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, а затем сделайте так:chmod 0755 ~/bin/gterm
После этого команда gterm готова. Более того, вы можете привязать ее к ярлыку.
решение3
osascript -e 'tell app "Terminal"
do script "echo hello"
end tell'
Это открывает новый терминал и выполняет в нем команду «echo hello».
решение4
Я думал, как вы сказали вкомментарий
gnome-terminal
Если вы запустите код, он откроет другой terminal
из существующегоterminal