我目前正在按照here所述将CD别名化为函数,但是,我还希望从dirstack中排除$ HOME并防止将重复项添加到dirstack中。无论如何操作dirstack而不更改目录?
答案 0 :(得分:2)
数组DIRSTACK
用于保存pushd
添加的条目。您可以分配给阵列的现有元素来修改堆栈(以便在轮到它popd
时使用新目录):
$ pushd /etc
/etc ~
$ pushd /usr
/usr /etc /~
$ echo "${DIRSTACK[@]}"
/usr /etc ~
$ DIRSTACK[1]=/var
$ echo "${DIRSTACK[@]}"
/usr /var ~
$ popd
/var
$
但是,其他尝试添加或移除DIRSTACK
(pushd
和popd
除外)将无效。