回答:
以下は、利用可能であるとrun-one
想定せずに機能する方法wmctrl
です。
wmctrl -xa terminator.Terminator || terminator
これは、デフォルトのウィンドウクラス名が使用されていることを前提としています。必要に応じてクリエイティブにして、起動時にカスタムクラス名を使用できますterminator
。これにより、ターミネーターのショートカットを通常のターミネーターインスタンスから分離することができます。
wmctrl -xa MyCustomTerminator.Terminator || terminator -c MyCustomTerminator
これは、を必要とせずに、Denisの回答に基づいていrun-one
ます。
bash -c 'wmctrl -xa terminator.Terminator || terminator'
Gnome 3.30.1 を使用してUbuntu 18.10で使用する必要がありました。それ以外の場合、ショートカットはターミネーターが既に実行されている場合にのみ機能します。
run-oneとxdotoolを使用して解決したハックは次のとおりです
/home/(user)/my_scripts/single_terminator_instance.sh
#!/usr/bin/bash
# run a single instance of terminator
/usr/bin/run-one /usr/bin/terminator
# search for the terminator window and focus!!!
/usr/bin/xdotool search --onlyvisible --class terminator windowactivate
その後
Main Menu
上記のスクリプトを指すようにターミネーターのショートカットコマンドを変更します。Ctrl
+ Alt
+ T
はスクリプトをアクティブにしますi'net全体を検索しているときに、偶然にもこれに遭遇しました
私はbashスクリプトを初めて使用するので、ハックの改良を歓迎します。
/usr/bin/wmctrl -xa terminator
:-) xdotoolの代わりに!デニスに感謝します。
wmctrl -xa terminator
ps aux | grep terminator
何も返しません。プロセスは私にとってx-terminal-emulatorとして実行されるので、それが原因である可能性があります。私は次のように手動でチェックしました。RUNNING= $(ps aux | grep x-terminal-emulator | grep -v grep)if [[-z $ RUNNING]]; 次に、X端末エミュレータ&Fiの