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”来操作目录栈就介绍到这里。

  • 相关阅读:
    jmeter学习笔记(二)
    jmeter学习笔记(一)
    让IE6 IE7 IE8 IE9 IE10 IE11支持Bootstrap的解决方法
    Fiddler抓包
    76. 最小覆盖子串
    Map中getOrDefault()与数值进行比较
    阻塞非阻塞与同步异步的区别
    81. 搜索旋转排序数组 II
    49. 字母异位词分组
    48. 旋转图像
  • 原文地址:https://www.cnblogs.com/itfat/p/11038882.html
Copyright © 2011-2022 走看看