介绍

目录栈是保存目录的栈结构,当前目录处于该栈结构的顶端,可使用dirs查看目录栈的目录。pushd命令可添加一个目录到目录栈,popd命令会清除目录栈中的一个目录。

  • dirs

    dirs有三个参数:

    -p 每行显示一条栈结构中的目录

    -v 每行展示一条栈结构中的目录及其index

    -c 清空目录栈中除当前目录的其他目录

  • pushd

    1)pushd后面跟目录路径,会切换到该目录并将其添加到目录栈,同时显示当前目录栈中的所有目录。

    2)直接执行pushd,会调换目录栈最顶端的两个目录。

    3)pushd+index值,如pushd +1表示切换到目录栈中index值为1的目录。

  • popd

    1)直接执行popd,会移除目录栈中的栈顶。

    2)popd + index,如popd +1表示删除目录栈中index值为1的目录。

    注:有时会用到pushd-index,popd-index,表示从栈底往上数。

代码示例

点击查看代码
~/biosoft/alphafold2.3$ dirs
# ~/biosoft/alphafold2.3
~/biosoft/alphafold2.3$ dirs -v
# 0 ~/biosoft/alphafold2.3
~/biosoft/alphafold2.3$ pushd database/mgnify/
# ~/biosoft/alphafold2.3/database/mgnify ~/biosoft/alphafold2.3
~/biosoft/alphafold2.3/database/mgnify$ pushd
# ~/biosoft/alphafold2.3 ~/biosoft/alphafold2.3/database/mgnify
~/biosoft/alphafold2.3$ pushd+1
# pushd+1: command not found
~/biosoft/alphafold2.3$ pushd + 1
# -bash: pushd: +: invalid number
# pushd: usage: pushd [-n] [+N | -N | dir]
~/biosoft/alphafold2.3$ pushd +1
# ~/biosoft/alphafold2.3/database/mgnify ~/biosoft/alphafold2.3
~/biosoft/alphafold2.3/database/mgnify$ popd
# ~/biosoft/alphafold2.3

pushd 和 popd:对目录栈进行操作的更多相关文章

  1. pushd和popd

    [原文地址]   其实,很早就知道pushd和popd在linux中可以用来方便地在多个目录之间切换.那时比较浮躁,感觉切换目录没必要这么复杂.在实际中,发现通过使用pushd和popd能够极大地提高 ...

  2. bash的pushd和popd

    1 pushd和popd是bash shell的builtin命令 2 pushd和popd维护了一个目录栈 pushd xxx就是将xxx放入目录栈顶. 目录栈顶就是当前的目录. 但是cd的话,会不 ...

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

    你可以将目录压入目录栈,也可以稍后将该目录弹出.在随后的示例中,将会用到以下三个命令: * dirs:显示目录栈 * pushd:将目录压入目录栈 * popd:将目录弹出目录栈 dirs命令显示当前 ...

  4. 命令行的目录栈(pushd指令与popd指令)

    在命令行下经常需要切换目录,通常的做法是手打目录名,而如果有时候我们需要临时离开一个目录去操作什么,过会再回来,重新打一次目录想必是很麻烦的,这时候就可以用目录栈了,直接pushd 目录,然后就放心的 ...

  5. 在命令行中使用pushd和popd进行快速切换目录

    当频繁的切换三个或三个以上的目录的时候,可以使用pushd命令.每次使用目录路径被存储在栈中,然后用pushd和popd操作在目录之间切换. 例如: [root@gameserver1 ~]# pus ...

  6. 【转载】dirs、pushd、popd指令

    转载自:http://hi.baidu.com/linuxtrip/item/47a38c8eec00e98f4414cfb7 一.目录栈指令 目录栈是用户最近访问过的系统目录列表,并以堆栈的形式管理 ...

  7. Linux 下 pushd,popd,cd- 用法

    一,为何要使用这几个命令? 可能大家会有疑问,为何要使用这几个命令,   难道用cd不就可以切换目录了吗?   没错,使用cd就可以切换到需要访问的目录,   但是有时会是一个路径很长,层次很多的目录 ...

  8. Linux 目录栈及目录切换

    使用 cd - (中杠)会切换到上一次的目录 cd 命令会改变目录栈 1.dirs 1)功能显示当前目录栈中的所有记录(不带参数的dirs命令显示当前目录栈中的记录) 2)语法(1)格式:dirs  ...

  9. cmd下PUSHD和POPD命令使用说明

    PUSHD命令保存当前目录以供 POPD 命令使用,然后改到指定的目录. PUSHD [path | ..] path 指定要成为当前目录的目录. 如果命令扩展被启用,除了一般驱动器号和路径,PUSH ...

  10. Linux下文件和目录的相关操作

    文件和目录的操作命令,按以下思路进行整理,感觉更便于记忆和使用 1.创建一个二进制文件 touch f1 2.向文件中写入数据 echo "hello" >> f1 e ...

随机推荐

  1. Node Sass version 7.0.1 is incompatible with ^4.0.0 node-sass 问题

    执行旧版项目安装依赖时报错 卸载 npm uninstall node-sass sass-loader 安装(need Python27) npm install sass-loader@7.3.1 ...

  2. pandas学习之 - excel篇

    一.读取Excel文件 read_excel()  # 读取excel文件(需要安装xlrd和openpyxl两个模块) 1.方法使用了Python的 xlrd 模块来读取Excel2003(.xls ...

  3. Coursera Programming Languages, Part C 华盛顿大学 Week 2

    week 2 我们采用一种新的视角来对比 FP 与 OOP,即将问题分解 (decompose) 与实现 (implement) 的方式 OOP Versus Functional Decomposi ...

  4. 关于Docker容器内不能ping通外网

    先在主机重启docker服务 systemctl stop docker systemctl start docker 然后再开启容器,进入容器 https://blog.csdn.net/qq_42 ...

  5. linux 防火墙管理

    1.查看防火墙状态指令 Firewall-cmd --state 2.关闭防火墙 service firewall stop 3.打开防火墙 service firewall start 4.重启防火 ...

  6. 安装S32 Design Studio及简单操作

    安装S32 Design Studio及简单操作 说明:安装所需要的安装包均在此文件中,安装流程及基本操作按照入门手册PDF进行即可,以下着重记录所学基本操作流程,安装流程省略 安装: 安装流程 按照 ...

  7. 2月21日python程序设计

    Python变量 1.不需要事先声明变量名及其类型,直接赋值即可. 2.强类型编程语言,根据赋值或运算来推断变量类型. 3.动态类型语言,变量的类型也是可以随时变化的. >>>  x ...

  8. Matlab|multcompare文档

    multcompare Syntax c = multcompare(stats) c = multcompare(stats,Name,Value) [c,m] = multcompare(___) ...

  9. PLC入门笔记10

    梯形图电路之顺序控制 顺序控制功能图 顺序控制功能图的梯形图表达 编程原则 实例分析 SMo0.1西门子首次扫描时为ON,常用作初始化脉冲 这是台达的 这是优控的..

  10. 2022-03-02英语精读(Returning Youths)

    今天早上没写代码,记录一下英语学习吧~ flee to sw/ from sb(sth)----coastal city-----get one's break----clinch a job/ de ...