Linux命令:用“dirs”、“pushd”、“popd”来操作目录栈
2024-10-19 00:20:54
你可以将目录压入目录栈,也可以稍后将该目录弹出。在随后的示例中,将会用到以下三个命令:
* dirs:显示目录栈
* pushd:将目录压入目录栈
* popd:将目录弹出目录栈
dirs命令显示当前所在目录及目录栈中的内容。即使目录栈为空,dirs也会显示当前所在的目录,示例如下:
1
2
3
4
5
6
|
# popd
-bash: popd: directory stack empty
# dirs
~
# pwd
/home/ramesh
|
如何使用pushd和popd呢?让我们先创建一些临时的目录然后把他们压入目录堆栈中去。
1
2
3
4
5
6
|
# mkdir /tmp/dir1
# mkdir /tmp/dir2
# mkdir /tmp/dir3
# mkdir /tmp/dir4
# cd /tmp/dir1
# pushd .
|
1
2
3
4
5
6
7
8
9
|
# cd /tmp/dir2
# pushd .
# cd /tmp/dir3
# pushd .
# cd /tmp/dir4
# pushd .
# dirs
/tmp/dir4 /tmp/dir4 /tmp/dir3 /tmp/dir2 /tmp/dir1
[注:显示的第一个目录名总会是当前所在的目录,而不是显式压入堆栈里的内容]
|
此时,目录堆栈就包含以下内容:
1
2
3
4
|
/tmp/dir4
/tmp/dir3
/tmp/dir2
/tmp/dir1
|
最后被压入的目录会在堆栈的顶端。当你执行“popd”,系统就会跳转到栈顶的目录中,并且从堆栈中把它清除掉。正如上面所展示的,最后压入堆栈的是/tmp/dir4,所以当进行一次popd时,就会跳转到/tmp/dir4目录下同时从堆栈中将它移除。如下所示:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
# popd
# pwd
/tmp/dir4
[注:执行完上popd命令之后,目录栈包括以下目录
/tmp/dir3
/tmp/dir2
/tmp/dir1]
# popd
# pwd
/tmp/dir3
[注:执行完上popd命令之后,目录栈包括以下目录
/tmp/dir2
/tmp/dir1]
# popd
# pwd
/tmp/dir2
[注:执行完上popd命令之后,目录栈包括以下目录 /tmp/dir1]
# popd
# pwd
/tmp/dir1
[注:执行完上popd命令之后,目录栈包括以下目录]
# popd
-bash: popd: directory stack empty
|
用“dirs”、“pushd”、“popd”来操作目录栈就介绍到这里。
最新文章
- UILabel 根据文本内容设置frame
- DataTable转List(备忘)
- Google V8编程详解(五)JS调用C++
- JQuery入门
- Flink - FlinkKafkaConsumer08
- UIWebView stringByEvaluatingJavaScriptFromString的使用方法
- Android Service和广播
- 各种语言简单的输出Hello World
- Android(java)学习笔记118:类继承的注意事项
- pc110301QWERTYU
- Signing key has not been configured
- android滑动基础篇 TouchView
- js 属性类型
- BZOJ 1086 王室联邦
- Zookeeper以Windows服务安装运行
- POJ 2387 Til the Cows Come Home(模板——Dijkstra算法)
- SVN的安装与使用教程
- HanLP 关键词提取算法分析
- mkdir 获得新建文件权限
- 阅读日志: 微信小程序的风口只有一天?