zoukankan      html  css  js  c++  java
  • 【转载】dirs、pushd、popd指令

    转载自:http://hi.baidu.com/linuxtrip/item/47a38c8eec00e98f4414cfb7

    一、目录栈指令

    目录栈是用户最近访问过的系统目录列表,并以堆栈的形式管理。栈中的内容与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

  • 相关阅读:
    UE4中集成ProtoBuf
    QT之打印 QPrinter
    qt界面嵌入外部进程界面
    QAxWidget 妙用
    UE4嵌入Qt5 三维可视化案例
    QSS入门(一)
    Docker与k8s的恩怨情仇(四)-云原生时代的闭源落幕
    成品软件二次开发排第三,低代码的应用场景有哪些?
    React 并发功能体验-前端的并发模式已经到来。
    Docker与k8s的恩怨情仇(三)—后浪Docker来势汹汹
  • 原文地址:https://www.cnblogs.com/pengdonglin137/p/3272501.html
Copyright © 2011-2022 走看看