文档章节

如何在Linux下环境下快速切换工作目录

我是偶哦
 我是偶哦
发布于 2016/06/01 08:53
字数 832
阅读 306
收藏 10

在Linux命令行下,我们经常需要在一个目录下执行某些操作在跳转到另外的目录下,也就是使用我们熟悉的cd命令,基本上接触过命令行的人,第一个认识的命令都是cd,了解cd命令会对我们工作效率有个提高,但是你真的了解它吗?

一、cd命令

格式:

cd [选项] [参数]

我们常用的就是cd后面直接加参数,也就是目录。 单其实参数和选项一样都是可选的。

cd ~ 和 cd (不加任何参数)都能直接切换到用户的主目录下面。

cd常用的选项只有-P

cd -P dir  如果dir是一个链接目录,则会跳转到dir指向的原目录。

常用技巧:

  1. 我们可以配置CDPATH环境变量
export CDPATH=.:~/dvp:~/workspace

这样的话cd不仅在当前目录搜索,也会在~/dvp和~/workspace目录下搜索。如果不配置 .(当前目录),系统会自动添加到CDPAHT 的结尾,也就是说如果当前目录和~/dvp都有这个文件夹,会优先进入~/dvp目录下的文件夹。

    2. cd -

切换到上次所在目录

二、pushd和popd命令

cd 命令的局限在于,如果需要在多个固定的文件夹之间来回跳转,cd命令就显得费事起来。两个文件夹之间可以用cd -,但是超过两个,我们就可以用pushd和popd命令。

pushd就是将一个目录压入一个栈,popd是将一个目录弹出栈。我可以跳转到栈中的任意一个路径,这对那些长路径很有意义。下面介绍它们的用法:

  1. pushd

pushd语法格式:

pushd [-n] [dir]

pushd [-N|+N]

-n是固定选项,N代表数字。如果开启-n选项,则表示将目录压入栈,但不跳转。

如果没有输入dir,则默认将当前目录压入栈顶。

pushd +N 表示跳转栈中第N个路径,且将此路径压入到栈顶(从左往右,从0开始)

pushd -N 表示跳转到第N个路径,且将次路基压入到栈顶 (从右往左,从0开始)

可以看到pushd 和pushd +1 是等价的。

其实 pushd -n +N|-N 也是可以的,在我的电脑上会将但前目录压入栈,然后将第+N或-N个目录删除。

    2. popd

popd语法格式:

popd [-n] [+N|-N]

值得一提的是,popd 不加任何选项参数会将栈顶元素弹出,然后跳转到新的栈顶元素目录。

-n 选项同pushd,将栈中元素弹出,但不跳转目录。

    3. dirs

dirs是查看目录栈中的元素,此命令主要是结合上面两个命令使用。如果压入栈中元素过多,记不准确时可以使用,格式如下:

 dirs [-clpv] [+N] [-N]

  • -c:删除目录栈中所有的记录
  • -l:以完整格式显示
  • -p:一个目录一行的方式显示
  • -v:每一行目录来显示目录栈的内容,每个目录前加上编号

如果不加上+N或-N则会将栈中所有元素打印出来。

© 著作权归作者所有

上一篇: CSS优先级
下一篇: CSS之Transform
我是偶哦
粉丝 6
博文 32
码字总数 21607
作品 0
深圳
私信 提问
迁徙到 Linux:命令行环境

刚接触 Linux?在这篇教程中将学习如何轻松地在命令行列出、移动和编辑文件。 这是关于迁徙到 Linux 系列的第四篇文章了。如果您错过了之前的内容,可以回顾我们之前谈到的内容 新手之 Linu...

作者: John Bonesio
2018/04/20
0
0
linux下 su 与 su - 的区别和使用

Linux下su与su -命令的区别 在启动服务器ntpd服务时遇到一个问题 使用 su root 切换到root用户后,不可以使用service命令; 使用 su - 后,就可以使用service命令了。 原因: su命令和su -命...

超天大圣
2018/08/19
0
0
使用 Xfce Linux 桌面环境的 8 个理由

整体上很优雅的 Xfce 桌面所具备的足够轻巧和快速的特性能够让它很容易都知道如何做好一件事。 由于某些原因(也包括好奇),几周前我开始使用 Xfce 作为我的 Linux 桌面。促使我更换 Linux ...

作者: David Both
01/04
0
0
【转】Linux下搭建Tomcat服务器

对于apache开源项目中tomcat的认识,大多停留在windows下,这次我通过一个简单的实例来介绍一下在linux下如何搭建tomcat环境,并且部署一个web项目。 先从基本安装开始,可别小看linux下的文...

段成诚
2011/08/18
357
0
z.lua 1.6.0 发布,会学习你习惯的 cd 命令

z.lua 是一个命令行下快速切换路径的工具。 首先,该工具会学习你最常去路径,然后用一套基于 frecency (兼顾访问频率和最近访问时间)的算法来筛选历史路径。让你可以简单的输入几个字符就...

韦易笑
03/04
80
0

没有更多内容

加载失败,请刷新页面

加载更多

关于AsyncTask的onPostExcute方法是否会在Activity重建过程中调用的问题

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/XG1057415595/article/details/86774575 假设下面一种情况...

shzwork
今天
7
0
object 类中有哪些方法?

getClass(): 获取运行时类的对象 equals():判断其他对象是否与此对象相等 hashcode():返回该对象的哈希码值 toString():返回该对象的字符串表示 clone(): 创建并返此对象的一个副本 wait...

happywe
今天
6
0
Docker容器实战(七) - 容器中进程视野下的文件系统

前两文中,讲了Linux容器最基础的两种技术 Namespace 作用是“隔离”,它让应用进程只能看到该Namespace内的“世界” Cgroups 作用是“限制”,它给这个“世界”围上了一圈看不见的墙 这么一...

JavaEdge
今天
8
0
文件访问和共享的方法介绍

在上一篇文章中,你了解到文件有三个不同的权限集。拥有该文件的用户有一个集合,拥有该文件的组的成员有一个集合,然后最终一个集合适用于其他所有人。在长列表(ls -l)中这些权限使用符号...

老孟的Linux私房菜
今天
7
0
面试套路题目

作者:抱紧超越小姐姐 链接:https://www.nowcoder.com/discuss/309292?type=3 来源:牛客网 面试时候的潜台词 抱紧超越小姐姐 编辑于 2019-10-15 16:14:56APP内打开赞 3 | 收藏 4 | 回复24 ...

MtrS
今天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部