Linux命令:用“dirs”、“pushd”、“popd”来操作目录栈

DIR 命令:

你能够将引得压入目录栈,也得以稍后将该目录弹出。在紧接着的示范中,将会用到以下七个指令:

  // 描述:

* dirs:突显目录栈

    (Directory)

* pushd:将引得压入目录栈

     彰显目录的公文和子目录的列表。 

* popd:将目录弹出目录栈

  // 语法:

dirs命令显示当前所在目录及目录栈中的内容。固然目录栈为空,dirs也会来得当前所在的目录,示例如下:

    dir
[<Drive>:][<Path>][<FileName>] […] [/p]
[/q] [/w] [/d]
[/a[[:]<Attributes>]][/o[[:]<SortOrder>]]
[/t[[:]<TimeField>]] [/s] [/b] [/l] [/n] [/x]
[/c] [/4]

1
2
3
4
5
6
# popd
-bash: popd: directory stack empty
# dirs
~
# pwd
/home/ramesh

  // 参数:

哪些利用pushd和popd呢?让大家先创设一些近期的目录然后把他们压入目录堆栈中去。

    /p:  (pause)

1
2
3
4
5
6
# mkdir /tmp/dir1
# mkdir /tmp/dir2
# mkdir /tmp/dir3
# mkdir /tmp/dir4
# cd /tmp/dir1
# pushd .

       假若展现的内容多于一屏的话,则暂停,可以按任意键继续下壹页,相当于 more**

1
2
3
4
5
6
7
8
9
# cd /tmp/dir2
# pushd .
# cd /tmp/dir3
# pushd .
# cd /tmp/dir4
# pushd .
# dirs
/tmp/dir4 /tmp/dir4 /tmp/dir3 /tmp/dir2 /tmp/dir1
[注:显示的第一个目录名总会是当前所在的目录,而不是显式压入堆栈里的内容]

那时候,目录堆栈就含有以下内容:

    /q:  展现文件全数权消息。

1
2
3
4
/tmp/dir4
/tmp/dir3
/tmp/dir2
/tmp/dir1

    /w:  (wild format) 

末段被压入的目录会在仓库的上边。当您执行“popd”,系统就会跳转到栈顶的目录中,并且从仓库中把它搞定掉。正如下边所突显的,最终压入堆栈的是/tmp/dir4,所以当实行二次popd时,就会跳转到/tmp/dir4目录下同时从仓库中校它移除。如下所示:

       以宽格式展现列表,每行最多五个文本名或目录名。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# popd
# pwd
/tmp/dir4
[注:执行完上popd命令之后,目录栈包括以下目录
/tmp/dir3
/tmp/dir2
/tmp/dir1]
# popd
# pwd
/tmp/dir3
[注:执行完上popd命令之后,目录栈包括以下目录
/tmp/dir2
/tmp/dir1]
# popd
# pwd
/tmp/dir2
[注:执行完上popd命令之后,目录栈包括以下目录 /tmp/dir1]
# popd
# pwd
/tmp/dir1
[注:执行完上popd命令之后,目录栈包括以下目录]
# popd
-bash: popd: directory stack empty

    /d:  以与/
w相同的格式显示列表,但文件名是按一列一列来排序的。 

用“dirs”、“pushd”、“popd”来操作目录栈就介绍到那里。

    /s:  (subdirectories)

       列出内定目录和全数子目录中的文件。

    /b:  (bare list)

       裸列表,意思是只有文件名,跟 /w /d
大约的,但是那么些 /b 鲜明要美观些。

    /l:  (lowcase)

       以小写情势体现未排序的目录名和文书名。 

    /n:  (long list)

       在显示器的最右面彰显带有文件名的长列表格式。

    /x:  展现为非捌dot叁文书名生成的短名称。 显示与/
n的映现同壹,但在长名称以前插入短名称。

    /c:  以文件大小展现千位分隔符。 这是暗中认可行为。 使用/
-c隐藏分隔符。

    /4:  以三人数格式呈现年份。这几个近乎是暗许值啊!!

    /a[:[<attributes>]]
    

 attributes:

    s:  system files

    h:     hidden files

    d:  directory files

    r:   read-only files

    a:  archiv files

    i:   not indexed files

    -:  meanings “not”

  

仅浮现全数钦命的性质的那多少个目录和文件的名目。
如若简单 /a,则 dir
彰显除隐藏文件和系统文件之外的全部文件的名号。

 假若使用/
a而未钦定Attributes,则dir将显得全体文件的名目,包含隐藏文件和系统文件。 
   

 

    /o[:[<sortOrder>]]  

        n:  name

        d:  date   

        s:  size

        e:  extension

        g:  group    

只顾:使用冒号是可选的。
将按列出的依次处理五个值。 不要用空格分隔多少个值。

借使未钦赐SortOrder,则dir  /o
按字母顺类别出目录,后跟文件,那几个文件也按字母逐1排序。

       

    /t:    (time-filed)

       钦赐要突显或用于排序的光阴字段。

        c:  creation time

        a:  last access
time

        w:     last write
time

  

  //
注意事项:

      –> 要使用多个FileName参数,请使用空格,逗号或分行分隔每种文件名。

      –>
能够应用通配符(*或?)
重定向符号和管道 来代表文件名的三个或八个字符,并展现文件或子目录的子集。

 

  // 实例:

 

    // 呈现全部内定属性的文件或目录:

    图片 1

 

    //
按某种排序格局来突显文件或目录:

    图片 2

    图片 3

    图片 4

 

 

 

    // /p 选项:也约等于 ” | more ” :

    图片 5

 

    // 呈现文件全数权消息:

    图片 6

 

    // 以宽格式突显列表:

    图片 7

 

     // 以宽格式显示列表,文件名是按1列一列来排序的:

    图片 8

   

    // 裸列表,唯有文件名:

    图片 9

 

    //
以小写的款型显得出来:

    图片 10

 

     // 显示全数文件:

    图片 11

 

  

发表评论

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

网站地图xml地图