您好,我是小DAI,专注于数据库管理员相关的技术问答,请问有什么可以帮您?

pushd

概要

shell
pushd [-n] [+N | -N | dir]

主要用途

  • 将目录添加到目录堆栈顶部,切换当前工作目录到该目录。

  • 旋转目录堆栈,使堆栈的新顶部成为当前工作目录。

  • 没有参数时,交换目录堆栈的前两个目录。

    选项

    shell
    -n    抑制添加目录引起的当前工作目录变化。
    

    参数

    +N(可选):不带参数执行dirs命令显示的列表中,左起的第N个目录将作为堆栈顶部,在它前面的会移动到底部。(从0开始计数)

    -N(可选):不带参数执行dirs命令显示的列表中,右起的第N个目录将作为堆栈顶部,在它前面的会移动到底部。(从0开始计数)

    dir(可选):要推送的目录。

    返回值

    返回成功除非提供了非法选项或执行出现错误。

    例子

    shell
    <h1>添加目录到堆栈,改变了当前工作目录。</h1>
    [user2@pc ~]$ dirs
    ~
    [user2@pc ~]$ pushd ~/Desktop
    ~/Desktop ~
    [user2@pc Desktop]$ 
    
    shell
    <h1>添加目录到堆栈,当前工作目录不变。</h1>
    [user2@pc ~]$ dirs
    ~
    [user2@pc ~]$ pushd -n ~/Desktop
    ~ ~/Desktop
    [user2@pc ~]$ pushd -n ~/Pictures
    ~ ~/Pictures ~/Desktop
    
    <h1>调整顺序。</h1>
    [user2@pc ~]$ pushd +1
    ~/Pictures ~/Desktop ~
    [user2@pc ~]$ pushd -1
    ~/Desktop ~ ~/Pictures
    [user2@pc ~]$ pushd
    ~ ~/Desktop ~/Pictures
    

    注意

  1. bash的目录堆栈命令包括dirs popd pushd

  1. 当前目录始终是目录堆栈的顶部。

  1. 该命令是bash内建命令,相关的帮助信息请查看help命令。

    参考链接

    • [popd、pushd命令'-n'选项的行为](https://superuser.com/questions/784450/popd-and-pushd-behavior-with-n-option)