urxvt 打开与当前选项卡相同的当前目录的新选项卡

urxvt 打开与当前选项卡相同的当前目录的新选项卡

每当在 urxvt 中打开新选项卡时,cwd(当前工作目录)就是 bashrc 中设置的默认目录。

如何让新标签页在当前标签页的cwd处打开?

答案1

首先,您可以使用cd每次更改目录时存储当前目录的函数来覆盖内置函数。

cd() {
    command cd $@
    pwd > ~/.curdir
}

然后,您可以在打开的每个新 shell 中更改为最后一个已知目录:

command cd `cat ~/.curdir`

如果您将这两个片段都放入您的 中~/.bashrc,则您打开的每个新 shell 都会具有覆盖的cd命令,并将尝试更改到最后一个已知目录:

#!/bin/bash

cd() {
    command cd $@
    pwd > ~/.curdir
}

command cd `cat ~/.curdir`

请注意,我使用command内置函数来访问原始cd命令,而不是名为 的函数cd()。另请注意,这样做可能会产生意想不到的副作用,特别是当您同时打开多个 shell 时(这就是使用urxvt选项卡的全部意义)。

相关内容