Linux 如何将新终端设置为保留以前终端的会话?

Linux 如何将新终端设置为保留以前终端的会话?,linux,terminal,gnome-terminal,Linux,Terminal,Gnome Terminal,在linux中,(在我的mac上,我可以在iterm2中的设置中执行此操作)如何设置终端仿真器,以便为我打开的每个新终端维护会话 例如:如果我在我的终端的~/code/文件夹中,当我打开一个新终端时,我也应该在新终端的~/code/文件夹中,而不是~/ 我的用例是在使用i3时不会失去上下文 是否有一个设置或推荐的仿真器可以做到这一点,是否有可能以编程方式完成此实现?我不确定您为什么要这样做,因为您可以通过搜索命令历史记录来访问“frequency”cded目录 然而,如果您真的想这样做,一个(肮

在linux中,(在我的mac上,我可以在iterm2中的设置中执行此操作)如何设置终端仿真器,以便为我打开的每个新终端维护会话

例如:如果我在我的终端的
~/code/
文件夹中,当我打开一个新终端时,我也应该在新终端的
~/code/
文件夹中,而不是
~/

我的用例是在使用i3时不会失去上下文


是否有一个设置或推荐的仿真器可以做到这一点,是否有可能以编程方式完成此实现?

我不确定您为什么要这样做,因为您可以通过搜索命令历史记录来访问“frequency”
cd
ed目录

然而,如果您真的想这样做,一个(肮脏的?)诀窍是将其添加到
.bashrc

#这在~/.bashrc中
退出(){
塞德-我是${
/^cd/{c\cd'$PWD
“'q};a\cd'”$PWD
}“$HOME/.bashrc
命令出口
}

它所做的是(隐式地)打印从第二行到最后一行的所有行,然后在最后一行(
$
)上检查最后一行是否以
cd
开头,后跟空格;如果是,它将
c
将其更改为
cd$PWD
q
uits;如果没有,则添加了
cd$PWD
行a。

我不确定您为什么要这样做,因为您可以通过在命令历史记录中搜索来访问“frequency”
cd
ed目录

然而,如果您真的想这样做,一个(肮脏的?)诀窍是将其添加到
.bashrc

#这在~/.bashrc中
退出(){
塞德-我是${
/^cd/{c\cd'$PWD
“'q};a\cd'”$PWD
}“$HOME/.bashrc
命令出口
}

它所做的是(隐式地)打印从第二行到最后一行的所有行,然后在最后一行(
$
)上检查最后一行是否以
cd
开头,后跟空格;如果是,它将
c
将其更改为
cd$PWD
q
uits;如果没有,则会附加
cd$PWD
行a。

为什么要标记此行?这可以通过编程来解决。@EnricoMariaDeAngelis投票给reopen@Inder:Write-a-program-for-me不是一个编程问题,因此它在堆栈溢出问题上仍然是离题的。@Tsyvarev我重新考虑了我的观点,我同意你的看法为什么要标记这个?这可以通过编程来解决。@EnricoMariaDeAngelis投票给reopen@Inder:Write-a-program-for-me不是一个编程问题,因此它在堆栈溢出问题上仍然是离题的。@Tsyvarev我重新考虑了我的观点,我同意你的看法