当频繁的切换三个或三个以上的目录的时候,可以使用pushd命令。每次使用目录路径被存储在栈中,然后用pushd和popd操作在目录之间切换。

例如:

[root@gameserver1 ~]# pushd /data/game/
/data/game ~
[root@gameserver1 game]# pwd
/data/game [root@gameserver1 game]# pushd /var/log/nginx/
/var/log/nginx /data/game ~
[root@gameserver1 nginx]# pwd
/var/log/nginx [root@gameserver1 nginx]# pushd /etc/my.cnf.d/
/etc/my.cnf.d /var/log/nginx /data/game ~
[root@gameserver1 my.cnf.d]# pwd
/etc/my.cnf.d

  以上三个目录切换的时候我采用的pushd的方式切换,使用下面的命令来查看栈里存储的内容:

[root@gameserver1 my.cnf.d]# dirs
/etc/my.cnf.d /var/log/nginx /data/game ~
0 1 2

当你想切换到列表中的任意一个路径的时候,将每条路径从0到n进行编号,然后使用你希望切换到的路径编号,例如:

[root@gameserver1 my.cnf.d]# pushd +1
/var/log/nginx /data/game ~ /etc/my.cnf.d
[root@gameserver1 nginx]# pwd
/var/log/nginx

  然后就切换到/var/log/nginx目录下了

 要删除最后添加的路径并把当前目录更改为上一级目录,可以使用以下命令:

/var/log/nginx /data/game ~ /etc/my.cnf.d
[root@gameserver1 nginx]# popd
/data/game ~ /etc/my.cnf.d

 使用popd +num可以从列表中移除特定的路径,num是从左到右,从0到n开始计数的。

但如果只有两个目录的时候,还有更便捷的方法:cd -

[root@gameserver1 game]# cd /var/www
[root@gameserver1 www]# cd /etc/nginx/
[root@gameserver1 nginx]# cd -
/var/www
[root@gameserver1 www]# cd -
/etc/nginx
[root@gameserver1 nginx]# cd -
/var/www

  

 

在命令行中使用pushd和popd进行快速切换目录的更多相关文章

  1. 【转帖】windows命令行中java和javac、javap使用详解(java编译命令)

    windows命令行中java和javac.javap使用详解(java编译命令) 更新时间:2014年03月23日 11:53:15   作者:    我要评论 http://www.jb51.ne ...

  2. 【转】WriteMessage的信息在AutoCAD中命令行中实时显示

    之前程序中有段发送信息到命令行上显示的代码,如下:     ed.WriteMessage("开始标注横断面高程,请稍候!");     但是发现命令行中并不马上显示,代码也明明运 ...

  3. 命令行中mysql乱码问题

    1.现象  在命令行中,执行sql语句如果包含中问题,提示“ Data too long for column '列名' at row 1”   或者在命令行中查询出的结果中,中文乱码   2.分析 ...

  4. Mac 在命令行中获得Root权限

    Mac 在命令行中获得Root权限 作者 firedragonpzy 13 九月, 2012 2条评论 本文为firedragonpzy原创,转载务必在明显处注明:转载自[Softeware MyZo ...

  5. 在命令行中运行eclipse中创建的java项目

    在命令行中运行eclipse中创建的java项目 博客分类: java相关 javaeclipse命令行  由于项目要求,需要对eclipse中的项目进行打包,似的可以在客户机上不装eclipse的情 ...

  6. 如何在Linux命令行中创建以及展示演示稿

    导读 你在准备一场演讲的时候,脑海可能会先被图文并茂.形象华丽的演示图稿所占据.诚然,没有人会否认一份生动形象的演讲稿所带来的积极作用.然而,并非所有的演讲都需要TED Talk的质量.更多时候,演讲 ...

  7. Windows下的cmd命令行中设置环境编码

    我们都知道,Windows下的cmd命令行默认编码是Windows系统的编码,就是ANSI编码或者说是GBK编码的,这样我们编写的很多应用比如php编写utf-8编码的应用在命令行下面运行时都会出现乱 ...

  8. Mongo命令行中执行CRUD

    在命令行中使用mongo自带的shell命令来执行CRUD操作 首先链接到数据库 增 db.qiao.insert({"qq":1}) db.qiao.save({"qq ...

  9. DOS命令行中的双引号

    在DOS命令窗口下,运行C:\Program Files\WinRAR\WinRAR.exe,提示如下错误: 因为C:\Program Files\WinRAR\WinRAR.exe中含有空格,它被分 ...

随机推荐

  1. auctex 11.86的墓志铭

    卸载了emacs23,在Ubuntu 软件中心搜索并安装了emacs24.3.把auctex11.86也卸载了(自然,在.emacs文件里也注释掉了它的加载路径,但是我不会删去那段代码的.让注释的那段 ...

  2. redis维护节点常用操作

    维护节点 添加主节点 hash槽重新分配 添加从节点 删除结点 1 添加主节点 集群创建成功后可以向集群中添加节点,下面是添加一个master主节点 添加7007结点作为新节点 执行命令:./redi ...

  3. 如何使用jQuery给asp.net的TextBox取值和赋值

    解决办法: 可以在控件中先设置属性ClientInstandName的值和ID的值一样,再使用$("#ID").val("12345")

  4. 04-Java 对象和类

    Java作为一种面向对象语言.支持以下基本概念: 多态 继承 封装 抽象 类 对象 实例 方法 重载 本节我们重点研究对象和类的概念. 对象:对象是类的一个实例(对象不是找个女朋友),有状态和行为.例 ...

  5. Python与用户相交互

    今日所得 Python中注释的重要性 Python与用户相交互: 1.输入 2.输出 3.格式化输出 Python的基本数据类型:int,float,str,list,dict,bool 运算符 1. ...

  6. 压缩感知与稀疏模型——Convex Methods for Sparse Signal Recovery

    第三节课的内容.这节课上课到半截困了睡着了,看着大家都很积极请教认真听讲,感觉很惭愧.周末不能熬太晚.这个博客就记录一下醒着时候听到的内容. Motivation 目前的时代需要处理的数据量维度可能很 ...

  7. [LC] 40. Combination Sum II

    Given a collection of candidate numbers (candidates) and a target number (target), find all unique c ...

  8. Euler characteristic

    Euler characteristic Euler定理 顶点(v),棱数(edge)(e),面(J) 尽管我们有四个不同的四面体,但是如果我们将顶点数\((v)\)减去棱数\((e)\)再加上四面体 ...

  9. Bringing up interface eth0: Device eth0 does not seem to be present, delaying initialization.FAILED

    1.service network stop 2./etc/sysconfig/network-scripts目录下,删除想要删除的网卡配置,我要删除eth1,所以rm -rf ifcfg-eth1, ...

  10. nodejs express 框架 上传文件

    web 项目应用express4.0框架 html 表单post 文件上传失败,后端无法获取提交文件 express不支持文件上传. 方式一 若是图片,可以将图片转码为BASE64上传 前端框架ang ...