Linux
每次我執行 tmux 時,都會啟動新的 ssh-agent 子程序(zshell)
每次啟動 tmux 或拆分 tmux 時,都會啟動新的 ssh-agent 實例(“Agent pid XXXX”出現在頂部),這很煩人,因為我每次要使用它都必須輸入密鑰密碼。更不用說一天結束時的 ssh 代理數量了。
我正在使用帶有 KDE 的 Arch Linux,我的 $SHELL 是 zshell。
ssh-agent
在系統啟動時自動啟動,但我不知道是誰啟動它 - 它不在.zshrc
or.bash_profile
中,我試圖在 grep 中查找“ssh-agent”,~
但什麼也沒找到。
預設情況下,
tmux
為所有新視窗生成一個登錄 shell。然後,這將獲取您的來源~/.zprofile
或您開始的ssh-agent
.
man tmux
很清楚,您可以通過在您的 : 中顯式設置預設命令來避免這種行為~/.tmux.conf
:default-command shell-command
將用於新視窗的命令(如果在創建視窗時未指定)設置為shell-command,可以是任何 sh(1) 命令。 預設是一個空字元串,它指示 tmux 使用 default-shell 選項的值創建一個登錄 shell。
因此,為了防止每個新視窗都作為登錄 shell 生成,請將以下行添加到您的配置文件中:
set -g default-command /bin/zsh