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 ~]#