在命令行中使用pushd和popd快速定位

pushd和popd可以用于在多个目录之间进行切换而无需复制粘贴路径,pushd和popd是以栈的方式来运作我们都知道栈是一个后进先出(LIFO)的数据结构,目录被存储在栈中,然后用push和pop操作在目录之间进行切换

压入切换路径

[root@MIO-2 ~]# pushd /root/
~ ~
[root@MIO-2 ~]# pushd /etc/
/etc ~ ~
[root@MIO-2 etc]#

现在栈中包含了/etc/,当前目录也切换到了/etc/

然后再压入下一个目录路径

[root@MIO-2 etc]# pushd /tmp/
/tmp /etc ~ ~
[root@MIO-2 tmp]#

现在栈包含/mnt/,当前目录为/mnt/

使用dirs查看当前栈中包含的目录,以及他们的路径编号

[root@MIO-2 tmp]# dirs
/tmp /etc ~ ~
[root@MIO-2 tmp]#

切换到指定的目录(我没实验成功)

使用dirs +路径编号,他只是显示了我想切换过去的目录,但是目录并没有改变

[root@MIO-2 etc]# dirs
/etc / ~
[root@MIO-2 etc]# dirs +2
~
[root@MIO-2 etc]#

从栈从移除目录

popd + 路径编号

[root@MIO-2 etc]# popd +2
/etc /
[root@MIO-2 etc]#

回到上一次cd进入的目录

[root@MIO-2 etc]# cd -
/root
[root@MIO-2 ~]#