高效的切换目录"/>
Linux下如何高效的切换目录
Linux下如何高效的切换目录
来源:脚本之家微信公众号
作者:良许
Linux 下对于目录的切换,大家肯定会想到一个命令:cd 命令。这个是 Linux 下最最最最基本不过的命令了。
cd 命令确实很方便,但如果需要频繁在下面的目录切换,你可能要怀疑人生了:
/home/alvin/projects/blogdemos/linux-system-programming/thread
/home/alvin/projects/blogdemos/diff
/home/harry/study/日本文化/中日交流/影视业/动作片
如果只会 cd 命令的话,那么就需要不停地 cd ,直到你发疯。
在这种情况下,我们如何高效进行目录切换呢?给大家介绍三个命令:pushd 、 popd 、 dirs 。
这三个命令其实都是对 目录栈 进行操作
(敲黑板了,划重点!!)
目录栈是一个保存目录的栈结构,目录栈结构的顶端永远都存放着当前目录
栈都是遵循着后进先出的原则。在栈结构里,后面进栈的元素,将先出栈。
- dirs (显示目录栈内容)
- 常见选项及含义
- -p ( 每行显示一条记录 )
- -v ( 每行显示一条记录,同时展示该记录在栈中的index )
- -c ( 清空目录 )
- 区别: -v 与 -p 的区别: -v 选项会显示每条记录在栈中的索引
最顶部的元素永远跟当前目录一致,如果在其他目录下查看目录栈,第一个元素将相应发生变化。
- pushd (压入目路栈)
每次 push 命令执行完成后,默认都会执行一个 dirs 命令来显示目录栈的内容。
-
用法
-
pushd + 目录
push 后面直接跟目录使用,会切换该目录并将该目录置于目录栈的栈顶
-
pushd (不带任何参数)
将目录栈最顶端的两个目录进行交换。 目录栈第一个元素与当前目录是相关的,所以第一个元素发生变化时,当前目录将对应切换,反之亦然。
-
pushd +/- n
直接切换到对应索引值的目录。注意:加号:目录栈由上往下数
减号:目录栈由下往上数
-
-
?问题: 如果两个或多个路径很长的目录之间频繁切换,如何操作?
- 用 pushd + 目录 讲几个路径添加到目录栈中;
- 再用 pushd +/- n 在不用的目录间快速切换
3. popd (弹出目录栈)
每次执行完 popd 命令后,默认会执行一个 dirs 命令来显示目录栈的内容。
- 用法
- popd (不带任何参数)
将目录栈中的栈顶元素出站。栈顶元素发生变化,目录也发生相应的切换
- popd +/- n
将目录栈的中的第 n 个元素删除。
加号:目录栈由上往下数
减号:目录栈由下往上数
- popd (不带任何参数)
ps: 如有错误,欢迎批评指正,谢谢!
更多推荐
Linux下如何高效的切换目录
发布评论