有时,使用命令导航Linux文件系统可能会很痛苦,特别是对于新手来说。 通常,我们主要使用cd(Change Directory)命令来移动Linux文件系统。
在前一篇文章中,我们审查了一个简单而有用的CLI命令行实用程序,名为bd,用于快速回到父目录,而不用重复输入cd ../../ ..
本教程将介绍一组相关的命令:“ pushd ”和“ popd ”,用于有效导航Linux目录结构。 它们存在于大多数shell中,如bash,tcsh等。
建议阅读: Autojump - 一个高级“cd”命令来快速浏览Linux文件系统
pushd和popd命令如何在Linux中工作
按照“ LIFO ”(最先进先出)原则推进和弹出工作。 在这个原则中,只允许两个操作:将一个项目推入,并将一个项目从中弹出。
pushd将一个目录添加到顶部,popd从顶部删除一个目录。
要显示目录(或历史记录)中的目录 ,我们可以使用dirs命令,如图所示。
$ dirs OR $ dirs -v
目录 - 目录中显示目录
pushd命令 - 将目录路径放入/添加到目录(历史记录)中,然后允许您导航回历史记录中的任何目录。 当您将目录添加到时,它也会回显历史记录(或“”)中存在的内容。
命令显示了pushd的工作原理:
$ pushd /var/www/html/ $ pushd ~/Documents/ $ pushd ~/Desktop/ $ pushd /var/log/
pushd - 将目录添加到
从上面输出的目录(目录索引是相反的顺序):
- / var / log是目录栈中的第五个[index 0]。
- 〜/ Desktop /是第四个[index 1]。
- 〜/ Documents /是第三[索引2]。
- / var / www / html / is second [index 3] and
- 〜是第一个[索引4]。
或者,我们可以使用pushd +#
或pushd -#
的形式将pushd +#
索引添加到中。 要移入〜/ Documents ,我们输入:
$ pushd +2
pushd - 带号码的目录导航
注意之后,内容会改变。 所以从前面的例子,移动到/ var / www / html ,我们将使用:
$ pushd +1
pushd - 使用号码导航目录
popd命令 - 从或历史记录的顶部删除目录。 要列出目录,请键入:
$ popd
要从目录中删除目录,请使用popd +#
或popd -#
,在这种情况下,我们将键入以下命令来删除〜/ Documents :
$ popd +1
popd - 从Stack移除目录
还可以查看: Fasd - 提供快速访问文件和目录的命令行工具
在本教程中,我们解释了用于高效导航目录结构的“ pushd ”和“ popd ”命令。 通过下面的反馈表单分享您对这篇文章的想法。