pushd 和 popd:对目录栈进行操作
介绍
目录栈是保存目录的栈结构,当前目录处于该栈结构的顶端,可使用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:对目录栈进行操作的更多相关文章
- pushd和popd
[原文地址] 其实,很早就知道pushd和popd在linux中可以用来方便地在多个目录之间切换.那时比较浮躁,感觉切换目录没必要这么复杂.在实际中,发现通过使用pushd和popd能够极大地提高 ...
- bash的pushd和popd
1 pushd和popd是bash shell的builtin命令 2 pushd和popd维护了一个目录栈 pushd xxx就是将xxx放入目录栈顶. 目录栈顶就是当前的目录. 但是cd的话,会不 ...
- Linux命令:用“dirs”、“pushd”、“popd”来操作目录栈
你可以将目录压入目录栈,也可以稍后将该目录弹出.在随后的示例中,将会用到以下三个命令: * dirs:显示目录栈 * pushd:将目录压入目录栈 * popd:将目录弹出目录栈 dirs命令显示当前 ...
- 命令行的目录栈(pushd指令与popd指令)
在命令行下经常需要切换目录,通常的做法是手打目录名,而如果有时候我们需要临时离开一个目录去操作什么,过会再回来,重新打一次目录想必是很麻烦的,这时候就可以用目录栈了,直接pushd 目录,然后就放心的 ...
- 在命令行中使用pushd和popd进行快速切换目录
当频繁的切换三个或三个以上的目录的时候,可以使用pushd命令.每次使用目录路径被存储在栈中,然后用pushd和popd操作在目录之间切换. 例如: [root@gameserver1 ~]# pus ...
- 【转载】dirs、pushd、popd指令
转载自:http://hi.baidu.com/linuxtrip/item/47a38c8eec00e98f4414cfb7 一.目录栈指令 目录栈是用户最近访问过的系统目录列表,并以堆栈的形式管理 ...
- Linux 下 pushd,popd,cd- 用法
一,为何要使用这几个命令? 可能大家会有疑问,为何要使用这几个命令, 难道用cd不就可以切换目录了吗? 没错,使用cd就可以切换到需要访问的目录, 但是有时会是一个路径很长,层次很多的目录 ...
- Linux 目录栈及目录切换
使用 cd - (中杠)会切换到上一次的目录 cd 命令会改变目录栈 1.dirs 1)功能显示当前目录栈中的所有记录(不带参数的dirs命令显示当前目录栈中的记录) 2)语法(1)格式:dirs ...
- cmd下PUSHD和POPD命令使用说明
PUSHD命令保存当前目录以供 POPD 命令使用,然后改到指定的目录. PUSHD [path | ..] path 指定要成为当前目录的目录. 如果命令扩展被启用,除了一般驱动器号和路径,PUSH ...
- Linux下文件和目录的相关操作
文件和目录的操作命令,按以下思路进行整理,感觉更便于记忆和使用 1.创建一个二进制文件 touch f1 2.向文件中写入数据 echo "hello" >> f1 e ...
随机推荐
- deployment.yml参考
apiVersion: apps/v1kind: Deploymentmetadata: labels: com.xx.service: xxxxxxxxxxxxx name: xxxxxxxxxxx ...
- SEO高质量外链怎么做?
其实seo是一个很枯燥的东西,说技术也没有什么技术可言 1.你需要每天坚持更新你的网站,坚持写软文 2.你需要每天发外链,而且有质量的外链 3.你需要每天交换友情链接来增加网站的权重名 4.你需要每天 ...
- 杭电 oj 第几天?
Problem Description 给定一个日期,输出这个日期是该年的第几天. Input 输入数据有多组,每组占一行,数据格式为YYYY/MM/DD组成,具体参见sample input , ...
- Java+selenium自动爬取网站内容并写入本地
目的:本文主要描述如何使用Java+selenium爬取58同城招聘页,并记录指定职位的招聘公司名保存到本地 一.首先创建一个maven工程,配置依赖包 1 <dependencies> ...
- signalR client属性中的大致方法
T All { get; } 相当于持久连接中的 Broadcast. T AllExcept(params string[] excludeConnectionIds); 给排除本人所有人发送消息. ...
- 策略模式demo
/** StrategyContext. */ public class StrategyContext { private Strategy strategy; // 传入的是Strategy的实现 ...
- ansiable学习
ansiable是用来做什么的? Ansible是一个配置管理和配置工具,是运维开发人员的批操作利器. ansiable是怎样实现高效的? 在一台机器上配置好模板,通过ssh在其他机器上按照模板执行. ...
- 严重 [RMI TCP Connection(3)-127.0.0.1] org.apache.catalina.core.StandardContext.listenerStart Error configuring application listener of class com.titan.extend.SpringContextLoaderListener
08-Jun-2022 10:05:21.119 严重 [RMI TCP Connection(3)-127.0.0.1] org.apache.catalina.core.StandardConte ...
- mac下eclipse关联svn插件
由于新冠状病毒的疫情这一周都需要在家办公了,家里只有一个mac之前只是娱乐工具,今天不得不用它撸代码,无奈重新安装各种环境,mac和windows的环境安装区别还是很大的,今天差点折磨死我,尤其是在e ...
- list tuple dic set的区别
list是可变的(可以在list里边添加删除替换内容) 声明时用[ ] tuple和list非常类似,但是tuple一旦初始化就不能修改 ,声明时用() classmates = ('Michael ...