“目录切换,不就是 cd 嘛,谁不会啊!?” 是的,可能大家都知道。但也许可以让目录切换更容易。
cd ~ # 或者 cd
# 切换到之前的目录,可以简单如下,比在需要记住它的具体位置 cd -
C Shell 有一个虚拟的目录堆栈(Stack),用于保存目录列表,堆栈位置的索引从 0 开始。下面的和这个目录堆栈有关
命令 | 描述 |
---|---|
pushd $d | 切换到目录 $d,并把原目录和当前目录压入到堆栈中。 |
pushd | 如果不指定参数,则会回到前一个目录,并把堆栈中最近的两个目录作交换 |
pushd +n | 切换到堆栈中的第n个目录,并这个目录置于堆栈顶部 |
popd | 弹出堆栈顶部目录,然后切换到新的堆栈顶部的目录 |
popd +n | 把堆栈中第n个目录从堆栈中删除 |
dirs 或 dirs -v | 列出当前堆栈中保存的目录列表 |
cd $d | 弹出堆栈顶部目录,切换目录,然后把当前目录置于堆栈顶部 |
如果要只改变目录堆栈的内容,而不切换目录,只需给 pushd 和 popd 加上参数 "-n" 即可。
不加任何参数的 "pushd" 在目录切换上等效于 "cd -"。