GNU/Linux >> Linux の 問題 >  >> Linux

ターミナルを閉じるときにすべてのTmuxセッションを閉じるようにBashrcを構成するにはどうすればよいですか?

Gnome Terminalとtmuxを使用していますが、Gnome Terminalを閉じるときにすべてのtmuxセッションを閉じたいのですが、それは可能ですか? tmuxのArchWikiの記事をチェックして、関連するコードをいくつか見つけましたが、どれも私が望むことをしませんでした。現在、Gnomeターミナルを閉じて開くと、すべてのペインとプログラムが実行されている状態でターミナルを閉じる直前のセッションが表示されます。私が欲しいのは、Gnomeターミナルを閉じるとすべてのセッションが強制終了されることです。

承認された回答:

オプション1:.bash_logoutを使用します

.bash_logoutで 追加できるファイルtmux kill-server 。ログインシェルを使用していない場合、またはシェルがSIGHUPで強制終了された場合、これは機能しません。

オプション2:bashトラップを使用します。

このオプションはおそらくより堅牢です。次のコードを.bash_profileに配置します (bashを使用すると仮定します)。

function close_tmux
{
    tmux kill-server
}
trap close_tmux EXIT

トラップに関する追加リソースへのリンク

trapの背景 ステートメント

trapがたくさんあるブログ投稿 例

Bashスクリプトガイドのトラップに関する章

トラップに関するUnixとLinuxのStackExchangeの質問


Linux
  1. Linuxターミナルでディレクトリを開いたり閉じたりする方法

  2. tmuxがLinuxターミナルでどのように喜びを刺激するか

  3. LinuxでターミナルからWebを検索する方法

  1. Linuxスクリプトコマンドで記録されたターミナルセッションを再生する方法

  2. Linuxスクリプトコマンドを使用してターミナルセッションをキャプチャして出力する方法

  3. システム上のすべてのSubversionリポジトリを見つける方法は?

  1. CentOSにHAProxyをインストールして設定する方法は?

  2. Linux ですべてのスパース ファイルを見つける方法

  3. ターミナルでHZを確認するには?