使用 tmux 在当前目录中打开终端

使用 tmux 在当前目录中打开终端

.bashrc目前有一个简单的文件,它允许我始终打开运行 tmux 的同一个终端(实际上是重新打开)。重要部分如下所示。

本质上,当你执行时,tmux attach -d你会断开任何tmux正在运行的会话,从而有效地关闭打开的终端窗口(因为我用命令打开了它tmux)。tmux然而仍在运行,因此调用终端会tmux attach -d重新打开该会话,这要归功于 tmux 配置文件中的一小行。

这很有效,但是现在我想恢复在单击“在此处打开终端”的目录中打开终端窗口的功能。

我理解我必须做到以下几点:

  1. 告诉tmux“Cm C”(创建新面板)
  2. cd到当前目录

这可能吗?我对这类事情了解甚少,因此才问这个问题。

我一直在寻找这个要点(如下所示)。这很有道理,但我不知道如何获取文件${TARGET}内的变量.bashrc

.bashrc

116 # Start tmux every time we call up a terminal
117 [[ $TERM != "screen" ]] && exec tmux attach -d

tmux.conf

  1 #if run as "tmux attach", create a session if one does not already exist
  2 new-session -n $HOST

要点文件

tmux_pwd () {
    [ -z "${TMUX}" ] && return
    TARGET=\-t$(tmux display-message -p "#S")
    tmux set-window-option ${TARGET} default-path $PWD > /dev/null
    (( sleep 300;
    tmux set-window-option ${TARGET} default-path  ~/Development > /dev/null; ) & ) > /dev/null 2>&1
}
alias pwd="\pwd; tmux_pwd"

答案1

Tmux 总是以您当前的工作目录打开。

例如,如果您位于 /home/user/Desktop/,tmux 会话将仅从此路径启动。

请详细说明您的问题。

相关内容