Bash

如何從視窗管理器鍵綁定中打開與上次使用的終端相同的目錄中的新終端?

  • April 18, 2021

我正在使用平鋪視窗管理器,並且我從gnome-terminal多個選項卡切換到urxvt由視窗管理器管理的多個實例。我想念的功能之一是能夠打開一個預設為最後一個工作目錄的新終端。

簡而言之:我需要一種方法來打開一個新的 urxvt (bash),它預設為上次使用的 $PWD。

我想到的唯一解決方案是使用以下內容保存每個路徑的目前路徑cd

echo $PWD > ~/.last_dir

並以這種方式恢復新終端上的路徑:

cd `cat ~/.last_dir`

我可以輸入第二個命令,.bashrc但我不知道如何在每次目錄更改時執行第一個命令:)

歡迎任何不涉及screen或不tmux使用的更簡單的解決方案。

我目前正在使用此版本的 #1 解決方案

# save path on cd
function cd {
   builtin cd $@
   pwd > ~/.last_dir
}

# restore last saved path
if [ -f ~/.last_dir ]
   then cd `cat ~/.last_dir`
fi

在我的里面.zshrc

這實際上是微不足道的;如果您urxvt從現有urxvt視窗中執行,則新視窗將位於同一目錄中。為此,我使用了dup別名。urxvt &如果你希望它綁定到熱鍵,你可以使用 bash 的bind命令。例如,將其綁定到F1

$ bind '"\e[11~": "urxvt &\n"'

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