前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux 命令(153)—— dirs 命令(builtin)

Linux 命令(153)—— dirs 命令(builtin)

作者头像
恋喵大鲤鱼
发布2022-10-26 14:19:51
5850
发布2022-10-26 14:19:51
举报
文章被收录于专栏:C/C++基础

文章目录

1.命令简介

dirs(directory stack)命令,用于显示目录栈。

目录栈是最近访问的目录的列表。配套的两个内置命令,一个是 pushd,更改当前目录时将目录添加到栈中,另一个是 popd 从栈顶删除目录,然后将当前目录更改为栈顶目录。dirs 用于显示目录栈的内容。当前目录始终是目录栈的顶部。

目录栈的内容也可以从 Shell 变量 DIRSTACK 获取到。

2.命令格式

代码语言:javascript
复制
dirs [+<n>] [-<n>] [-clpv]

dirs 不带选项执行时显示目录栈中的所有内容。

3.选项说明

代码语言:javascript
复制
+N
	从栈顶开始,显示第 N 个目录,下标从零开始。
-N
	从栈底开始,显示第 N 个目录,下标从零开始。
-c
	删除所有元素以清空目录栈。
-l
	替换掉家目录的波浪号,显示完整的更长的目录。
-p
	每行一个条目打印目录栈。
-v
	每行一个条目,以栈中位置为前缀打印目录栈。

4.常用示例

(1)显示当前目录栈。

当前目录栈默认只有一个元素,即当前的工作目录。如果使用 cd 改变当前工作目录,那么目录栈的目录也会随之改变。

代码语言:javascript
复制
# dirs
~

切换一下当前的目录再看下。

代码语言:javascript
复制
# cd cpp
# dirs
~/cpp

(2)向目录栈添加目录。

可以使用 pushd 命令,向录栈添加目录,并同时改变当前工作目录。

代码语言:javascript
复制
# pushd /root/cpp/txt0
~/cpp/txt0 ~/cpp

# pushd /root/cpp/txt1
~/cpp/txt1 ~/cpp/txt0 ~/cpp

(3)使用长格式显示目录栈。

代码语言:javascript
复制
# dirs -l
/root/cpp/txt1 /root/cpp/txt0 /root/cpp

(4)每行一个目录并以在栈中的下标作为前缀。

代码语言:javascript
复制
# dirs -v
 0  ~/cpp/txt1
 1  ~/cpp/txt0
 2  ~/cpp

(5)从目录栈删除目录。

可以使用 popd 命令,删除目录栈栈顶目录,然后改变当前工作目录为栈顶目录。如我们将 ~/cpp/txt1 出栈,那么当前工作目录将变为 ~/cpp/txt0。

代码语言:javascript
复制
# popd
~/cpp/txt0 ~/cpp

# pwd
/root/cpp/txt0

(6)清空目录栈,只保留栈顶元素。

代码语言:javascript
复制
# dirs -c

参考文献

dirs(1) builtin manual - linux.org The Directory Stack (Bash Reference Manual) - GNU

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-10-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 文章目录
  • 1.命令简介
  • 2.命令格式
  • 3.选项说明
  • 4.常用示例
  • 参考文献
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档