磁盘文件与权限

popd:从目录堆栈中删除目录

· 52CE 我爱测

适用场景 从目录堆栈中删除目录。 本条为命令参考与排查示例;请先确认命令已安装,再按示例定位实际参数和输出。 popd === 从目录堆栈中删除目录。 概要 主要用途 - 从目录堆栈中删除目录,如果是顶部目录被删除,那么当前工作目录会切换到新的顶部目录。 - 没有参数时,删除目录堆栈顶部。 选项 参数 +N(可选):不带参数执行dirs命令显示的列表中,左起的第N个目录将被删除。(从0开始计数) -N(可选):不带参数执行dirs命令显示的列表中,右起的第

适用场景

从目录堆栈中删除目录。 本条为命令参考与排查示例;请先确认命令已安装,再按示例定位实际参数和输出。

popd

从目录堆栈中删除目录。

概要

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 ~]$ 

注意

  1. bash的目录堆栈命令包括dirs popd pushd。
  2. 当前目录始终是目录堆栈的顶部。
  3. 该命令是bash内建命令,相关的帮助信息请查看help命令。

参考链接

资料来源与适用范围

资料来源
Linux命令参考(原作者中文文档)
适用范围
Linux / Unix;具体选项随发行版和命令版本变化
内容语言
中文;命令、路径和错误标识保留技术原文
本地收录日期
2026-10-26
授权说明
MIT

正文与所需资源由本站本地存储。查看来源及更新记录 ↗

请按适用版本和实际日志确认原因;本站没有对每一种系统或设备逐项执行文中的操作。