dirs、pushd、popd指令

dirs、pushd、popd指令出处:http://hi.baidu.com/linuxtrip/item/47a38c8eec00e98f4414cfb7 linuxtrips宝剑锋从磨砺出,梅花香自苦寒来2010-08-0213:42dirs、pushd、popd指令一、目录栈指令目录栈是用户最近访问过的系统目录列表,并以堆栈的形式管理。栈中的内容与

大家好,欢迎来到IT知识分享网。dirs、pushd、popd指令

 

 

 

 

出处:http://hi.baidu.com/linuxtrip/item/47a38c8eec00e98f4414cfb7

 

linuxtrips

宝剑锋从磨砺出,梅花香自苦寒来

2010-08-02 13:42

dirs、pushd、popd指令

一、目录栈指令

目录栈是用户最近访问过的系统目录列表,并以堆栈的形式管理。栈中的内容与Shell环境变量DIRSTACK的值对应

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)格式:pushd  [-N | +N]   [-n]

(2)选项

+N   将第N个目录删除(从左边数起,数字从0开始)

-N    将第N个目录删除(从右边数起,数字从0开始)

-n    将目录出栈时,不切换目录


二、 相关实例

实例一:入栈与出栈

root@Mylinux:~# mkdir /tmp/dir{1,2,3,4}

root@Mylinux:~# for ((i=1;i<=4;i++))

> do

>   pushd /tmp/dir${i}

> done

/tmp/dir1 ~

/tmp/dir2 /tmp/dir1 ~

/tmp/dir3 /tmp/dir2 /tmp/dir1 ~

/tmp/dir4 /tmp/dir3 /tmp/dir2 /tmp/dir1 ~

root@Mylinux:/tmp/dir4# dirs

/tmp/dir4 /tmp/dir3 /tmp/dir2 /tmp/dir1 ~

root@Mylinux:/tmp/dir4# popd(相当于popd +0)

/tmp/dir3 /tmp/dir2 /tmp/dir1 ~

root@Mylinux:/tmp/dir3# pushd /tmp/dir4

/tmp/dir4 /tmp/dir3 /tmp/dir2 /tmp/dir1 ~

root@Mylinux:/tmp/dir4# popd +1

/tmp/dir4 /tmp/dir2 /tmp/dir1 ~

root@Mylinux:/tmp/dir4# popd -2

/tmp/dir4 /tmp/dir1 ~

root@Mylinux:/tmp/dir4# pushd /tmp/dir3

/tmp/dir3 /tmp/dir4 /tmp/dir1 ~

root@Mylinux:/tmp/dir3# pushd /tmp/dir2

/tmp/dir2 /tmp/dir3 /tmp/dir4 /tmp/dir1 ~

root@Mylinux:/tmp/dir2# pushd -1

/tmp/dir1 ~ /tmp/dir2 /tmp/dir3 /tmp/dir4

注意:最左边表示栈顶,最右边表示栈底

实例二:清空栈

root@Mylinux:~# dirs

~ /tmp/dir2 /tmp/dir3 /tmp/dir4 /tmp/dir1

root@Mylinux:~# dirs -c

root@Mylinux:~# dirs

~

实例三:列表形式显示的栈的内容

root@Mylinux:/tmp/dir4# dirs -l -v

0  /tmp/dir4

1  /tmp/dir3

2  /tmp/dir2

3  /tmp/dir1

4  /root

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/11493.html

(0)

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信