zoukankan      html  css  js  c++  java
  • Linux命令:用“dirs”、“pushd”、“popd”来操作目录栈

    原文

    https://www.cnblogs.com/wajika/p/6506521.html

    你可以将目录压入目录栈,也可以稍后将该目录弹出。在随后的示例中,将会用到以下三个命令:

    * dirs:显示目录栈

    * pushd:将目录压入目录栈

    * popd:将目录弹出目录栈

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

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

    如何使用pushd和popd呢?让我们先创建一些临时的目录然后把他们压入目录堆栈中去。

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

    此时,目录堆栈就包含以下内容:

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

    最后被压入的目录会在堆栈的顶端。当你执行“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

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

  • 相关阅读:
    [009]类型转换
    [008]new、delete及动态内存分配
    [007]操作符的求解顺序
    [010]转+修正---C++的贪吃蛇程序(未用面向对象封装)
    [006]为什么C++会被叫做是C++?
    [005]逗号表达式
    [JavaScript]转--如何让JS代码高大上
    [009]C---关于输出文本的打印问题
    [008]C---gcc环境下的一个编译器版本问题
    PlayMaker 状态机FSM重用
  • 原文地址:https://www.cnblogs.com/itfat/p/11038882.html
Copyright © 2011-2022 走看看