从目录堆栈中删除目录。。
概要
popd [-n] [+N | -N]
主要用途
-
从目录堆栈中删除目录,如果是顶部目录被删除,那么当前工作目录会切换到新的顶部目录。
-
没有参数时,删除目录堆栈顶部。
选项
-n 抑制删除目录引起的当前工作目录变化。
参数
+N(可选):不带参数执行dirs
命令显示的列表中,左起的第 N 个目录将被删除。(从 0 开始计数)
-N(可选):不带参数执行dirs
命令显示的列表中,右起的第 N 个目录将被删除。(从 0 开始计数)
返回值
返回成功除非提供了非法选项或执行出现错误。
例子
# 添加目录到堆栈,当前工作目录不变。
[user2@pc ~]$ dirs
~
[user2@pc ~]$ pushd -n ~/Desktop
~ ~/Desktop
[user2@pc ~]$ pushd -n ~/Pictures
~ ~/Pictures ~/Desktop
[user2@pc ~]$ pushd -n ~/bin
~ ~/bin ~/Pictures ~/Desktop
# 从目录堆栈中删除目录,删除顶部目录时会改变当前工作目录:
[user2@pc ~]$ popd -2
~ ~/Pictures ~/Desktop
[user2@pc ~]$ popd +1
~ ~/Desktop
[user2@pc ~]$ popd
~/Desktop
[user2@pc Desktop]$
# 从目录堆栈中删除目录,删除顶部目录时不会改变当前工作目录:
[user2@pc ~]$ dirs
~
[user2@pc ~]$ pushd -n ~/Desktop
~ ~/Desktop
[user2@pc ~]$ popd -n
~
[user2@pc ~]$
注意
bash
的目录堆栈命令包括dirs popd pushd
。- 当前目录始终是目录堆栈的顶部。
- 该命令是 bash 内建命令,相关的帮助信息请查看
help
命令。