linux pushd命令,技术|在 Linux 中使用 pushd 和 popd 命令来进行高效的目录导航

本文介绍了Linux中用于高效导航目录结构的pushd和popd命令。这两个命令遵循后进先出(LIFO)原则,允许用户方便地在目录之间切换。pushd将新目录添加到栈顶,popd则从栈顶移除目录。通过使用dirs命令,用户可以查看目录栈的状态。文章通过实例展示了如何使用pushd+#或pushd-#来访问特定目录,并使用popd命令移除目录。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

有时候,通过命令来在 Linux 文件系统导航是一件非常痛苦的事情,特别是对于一些新手。通常情况下,我们主要使用 cd(改变目录)命令在 Linux 文件系统之间移动。

在之前的文章中,我们回顾了一个非常简单但很有用的 Linux 上的 CLI 工具,文章叫做 bd:快速返回某级父目录而不用冗余地输入 “cd ../../..”

在这个教程中,我们将讨论两个相关的命令:pushd 和 popd ,使用它们可以高效的浏览 Linux 目录结构。这两个命令在大多数 shell ,比如 bash、tcsh 中都存在。

pushd 和 popd 命令在 Linux 系统中如何工作

pushd 和 popd 命令根据 ‘LIFO’(后进先出)原则工作。在这个原则之下,只有两个操作是允许的:把一个目录压入栈,以及把一个目录弹出栈。

pushd 命令会增加一个目录到栈顶,而 popd 命令会从栈顶移除一个目录。

为了显示目录栈中(或历史)的目录,我们可以使用下面展示的 dirs 命令:

$ dirs

$ dirs -v

6dae15123eda30839a369e06654f69e0.png

dirs - 显示位于目录栈中的目录

pushd 命令:将一个目录路径添加到/放入目录栈(历史)中,之后,你可以浏览位于目录栈(历史)中的任意目录。当把一个新的目录入栈时,会打印出当前位于栈中的所有目录。

下面这些命令会展示这个命令是如何工作的:

$ pushd /var/www/html/

$ pushd ~/Documents/

$ pushd ~/Desktop/

$ pushd /var/log/

7ed3fde6238542d06bbebaabed79a6ca.png

pushd - 添加新目录入栈

根据上面输出的目录栈可知(目录索引按倒序排列):

/var/log 是目录栈中的第五个目录,索引为 0

~/Desktop/ 是第四个,索引为 1

~/Document/ 是第三个,索引为 2

/var/www/html 是第二个,索引为 3

~ 是第一个,索引为 4

另外,我们也可以使用目录索引的形式 pushd +# 或 pushd -# 来添加目录入栈。为了进入目录 ~/Documents ,我们可以输入:

$ pushd +2

959feea4248a54ce2e1b28c1cab1bb2f.png

pushd -通过数字浏览目录

注意,经过上一步操作以后,栈的内容便发生了改变。所以,要从上面的例子中进入目录 /var/www/html ,我们应该使用下面的命令:

$ pushd +1

9fe9839de224cd0bef65e1d70ab3d651.png

pushd -通过数字浏览目录

popd 命令-从栈顶或历史中移除一个目录。为了列出目录栈中的所有目录,只需输入:

$ popd

为了从目录栈中移除一个目录,我们可以使用 popd +# 或 popd -# 命令,在这时,我们需要输入下面的命令来移除目录 ~/Documents :

$ popd +1

13f3603da052480dec34191b35bcff34.png

popd-从栈中以移除目录

在这篇文章中,我们阐述了 pushd 和 popd 命令,使用它们可以高效的访问目录结构。你可以通过下面的反馈表和我们分享你关于这篇文章的想法。

作者简介:

Aaron Kili 是 Linux 和 F.O.S.S 爱好者,将来的 Linux 系统管理员和网络开发人员,目前是 TecMint 的内容创作者,他喜欢用电脑工作,并坚信分享知识。

本文由 LCTT 原创编译,Linux中国 荣誉推出 linisi.svg

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值