Linux pushd 和 popd 命令示例Linux pushd 和 popd 命令示例Linux pushd 和 popd 命令示例Linux pushd 和 popd 命令示例
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

Linux pushd 和 popd 命令示例

Pushd 和 popd 命令允许您在 Linux 和类 Unix 操作系统中使用目录堆栈。它们用于在目录堆栈中添加和删除目录。 Pushd 和 Popd 中的“d”代表目录。

堆栈的概念很简单。目录堆栈是后进先出(LIFO)队列。每次执行 popd 命令后,目录堆栈的大小都会减小。

本教程将学习如何使用 pushd 和 popd 命令来导航 Linux 目录树。

基本语法

Pushd 命令采用以下语法:

$ pushd [OPTIONS] [DIRECTORY]

以下是如何使用 Pushd 命令的示例。

使用pushd命令添加目录

Pushd 命令用于将目录添加到目录树堆栈中。下面的命令将 Music 目录添加到堆栈中。

$ pushd ~/Music

从下图中,Music 目录现在成为当前工作目录。

要查看目录堆栈,请运行:

$ dirs -l -v

当您将目录添加到堆栈时,最近添加的目录将位于堆栈的顶部。

添加新目录而不修改当前目录

当您执行pushd命令时,当前目录将更改为您指定的目录。要在保持当前目录不变的情况下添加新目录,请使用-n选项。

当您执行该命令时,该目录现在将位于堆栈中的第二个位置。

将 -n 选项与要添加的目录一起使用,如下面的语法所示。

$ pushd -n directory

从下图中,Pictures 目录现在位于从顶部数第二个位置。

移动到堆栈中任意位置的目录

Pushd 命令接受数字参数。它允许您导航到堆栈中的第 n 个目录。 +n选项从堆栈顶部开始,第 n 个位置的目录现在将成为当前目录。

从下图中,+2位置的目录是“Videos”目录。执行pushd后,Videos目录现在位于堆栈的顶部。

Popd 命令

popd命令将当前目录设置为最近由pushd命令存储的目录。每次调用 Pushd 命令时,都会存储一个目录。

基本语法

Popd 命令采用以下语法

$ popd [OPTIONS] [DIRECTORY]

删除目录堆栈中的目录

就其本身而言,popd 命令允许您删除目录堆栈顶部的目录。该命令执行后,从上数第二个目录变为当前目录。

要查看目录堆栈,请使用以下命令:

$ dirs -l -v

接下来,运行 popd 命令:

$ popd

我们参考下图。就我而言,主目录位于目录堆栈的顶部。执行 popd 命令后,主目录将被清除,顶部目录将成为视频目录。

使用 -n 选项从堆栈中删除目录

popd 命令和 -n 选项可以删除堆栈上的目录,而不修改当前目录。

当您执行 popd -n 命令时,堆栈顶部第二个位置的目录将被删除。

$ popd -n

参考下图,命令执行后,主目录仍位于堆栈顶部。相反,从顶部数第二个位置的目录被删除。

从任意位置删除目录

您可以删除第 n 个位置的目录。数字参数与 popd 命令一起传递。

语法:

$ popd +n
$ popd -n

当执行popd +n命令时,栈顶第n个目录被删除。选项 -n 删除从堆栈底部开始的第 n 个位置的目录。

从下图中,我们执行了命令 popd +1。 这将删除位于堆栈顶部第一个位置的 Downloads 目录。然后,每个目录在堆栈中向上移动一位。

选项 -0 允许您删除堆栈上的最后一个目录。运行以下命令:

$ popd -0

从下图中,桌面目录已从堆栈中删除。 

结论

正如您所观察到的,pushd 和 popd 命令对于从一个目录导航到另一个目录非常有用。当您习惯了该命令后,您将能够以更快、更有效的方式在 Linux 中浏览目录。

©2015-2025 艾丽卡 support@alaica.com