Tmux

tmux 更改會話的預設工作目錄而不附加

  • November 11, 2020

我正在尋找一種方法來做這樣的事情而不附加到會話中。

tmux attach-session -c <directory> -t <session>
                   ^^^^^^^^^^^^^^

Per tmux(1),沒有辦法更改整個會話的預設工作目錄(新視窗和新窗格)而不附加到它。

我無法附加到會話,因為我在一些自動化腳本中執行此操作,其中附加會破壞自動化。

你可以簡單地

tmux attach -c directory -t session 2> /dev/null &

由於分叉的後台作業不是終端,附加將立即退出。但它會成功更改 tmux 會話的工作目錄。

**編輯:**我更正-s了,-t但這個技巧在 tmux 3.1b 中似乎不再起作用。

`tmux send-keys -t <session> 'cd <directory>'`

做你想做的事?

不確定這是否適用於在此之後創建的新視窗/窗格,但可憐的人的解決方法是<session>:<windowID>.<paneID>在創建該視窗/窗格後將其發送到。

引用自:https://unix.stackexchange.com/questions/500373