在 Linux 中使用“pushd”和“popd”进行高效文件系统导航

有时,使用命令浏览 Linux 文件系统可能会很痛苦,尤其是对于新手来说。通常情况下,我们主要使用用于在 Linux 文件系统中移动。

在上一篇文章中,我们回顾了一个简单但有用的 Linux CLI 实用程序,称为无需打字光盘 ../../..反复。

本教程将解释一组相关的命令:“推送“ 和 ”要求” 用于有效导航 Linux 目录结构。它们存在于大多数 shell 中,例如 bash、tcsh 等。

建议阅读:

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

推送要求工作按照“后进先出“(后进先出)原则。在这个原则中,只允许两种操作:将一项压入堆栈,并将一项从堆栈中弹出。

Pushd 将一个目录添加到堆栈顶部,而 popd 从堆栈顶部删除一个目录。

要显示目录堆栈(或历史记录)中的目录,我们可以使用命令如图所示。

$ dirs
OR
$ dirs -v
Dirs – 显示目录中的目录

推命令– 将目录路径放入/添加到目录堆栈(历史记录)中,然后允许您导航回历史记录中的任何目录。当您将目录添加到堆栈时,它也会回显历史记录(或“堆栈”)中存在的内容。

这些命令显示了 Pushd 的工作原理:

$ pushd  /var/www/html/
$ pushd ~/Documents/
$ pushd ~/Desktop/
$ pushd /var/log/
Pushd – 将目录添加到堆栈

从上面输出中的目录堆栈(目录索引按相反顺序):

  • /var/日志是目录堆栈中的第五个[索引0]。
  • 〜/桌面/是第四个[索引1]。
  • 〜/文件/是第三[索引2]。
  • /var/www/html/是第二个 [索引 3] 且
  • 是第一个[索引4]。

或者,我们可以使用以下形式的目录索引pushd +#或者pushd -#将目录添加到堆栈中。搬入〜/文件,我们会输入:

$ pushd +2
Pushd – 带号码的目录导航

请注意,此后堆栈内容将发生变化。所以从前面的例子开始,进入/var/www/html,我们会使用:

$ pushd +1
Pushd – 使用号码导航目录

弹出命令– 从堆栈或历史记录的顶部删除目录。要列出目录堆栈,请键入:

$ popd

要从目录堆栈中删除目录,请使用popd +#或者popd -#,在这种情况下,我们将输入以下命令来删除〜/文件:

$ popd +1
popd – 从堆栈中删除目录

另请查看:

在本教程中,我们解释了“推送“ 和 ”要求”命令,用于有效地导航目录结构。通过下面的反馈表分享您对本文的看法。