红联Linux门户
Linux帮助

Linux中pushd、popd和dirs

发布时间:2016-02-07 10:43:19来源:linux网站作者:bytxl

1、dirs

1)功能
不带参数的dirs命令显示当前目录栈中的记录

2)语法
(1)格式:dirs  [-clpv]  [+n]  [-n]
(2)选项
-c    删除目录栈中的所有记录
-l     以完整格式显示
-p    一个目录一行的方式显示
-v    每行一个目录来显示目录栈的内容,每个目录前加上的编号
+N  显示从左到右的第n个目录,数字从0开始
-N   显示从右到左的第n个日录,数字从0开始
注意:dirs始终显示当前目录, 再是堆栈中的内容;即使目录堆栈为空, dirs命令仍然只显示当然目录。


2、pushd

1)功能
pushd命令常用于将目录加入到栈中,加入记录到目录栈顶部,并切换到该目录;

若pushd命令不加任何参数,则会将位于记录栈最上面的2个目录对换位置,并切换到第二个目录。

2)语法
(1)格式:pushd  [目录 | -N | +N]   [-n]
(2)选项
目录   将该目录加入到栈顶,并执行"cd 目录",切换到该目录
+N   将第N个目录移至栈顶(从左边数起,数字从0开始)
-N    将第N个目录移至栈顶(从右边数起,数字从0开始)
-n    将目录入栈时,不切换目录


3、popd

1)功能
popd用于删除目录栈中的记录;如果popd命令不加任何参数,则会先删除目录栈最上面的记录,然后切换到删除过后的目录栈中的最上面的目录

2)语法
(1)格式:popd  [-N | +N]   [-n]
(2)选项
+N   将第N个目录删除(从左边数起,数字从0开始)
-N    将第N个目录删除(从右边数起,数字从0开始)
-n    将目录出栈时,不切换目录

示例:

root@ubuntu:~# pushd /root/code/
~/code ~
root@ubuntu:~/code# pushd /root/softwares/
~/softwares ~/code ~
root@ubuntu:~/softwares# pushd
~/code ~/softwares ~
root@ubuntu:~/code# pushd
~/softwares ~/code ~
root@ubuntu:~/softwares# popd
~/code ~
root@ubuntu:~/code# popd
~
root@ubuntu:~#


本文永久更新地址:http://www.linuxdiyf.com/linux/17925.html