文档教程【免费下载链接】linux-commandLinux命令大全搜索工具内容包含Linux命令手册、详解、学习、搜集。https://git.io/linux项目地址https://gitcode.com/GitHub_Trending/linux/linux-command点击查看免费下载本文是 Linux 命令速查仓库 linux-command 中dris命令手册的深度展开核心围绕目录堆栈Directory Stack这一 shell 机制展开从dris的语法与选项出发串讲dirs、pushd、popd三个 bash 内建命令构成的完整工作流并结合仓库源码与示例帮助读者掌握堆栈查看、定位、旋转与清空的全部操作手法最终能在日常终端操作中自如地在多个常用目录之间往返切换。dris 命令概述dris是 bash 的一个内建命令用于显示和清空目录堆栈中的内容。目录堆栈是 shell 维护的一个最近访问目录列表栈顶始终是当前工作目录。通过pushd将目录压入栈顶、popd弹出栈顶配合dirs/dris查看栈内容开发者可以告别一次次手动敲cd长路径的繁琐操作。在仓库中该命令的手册文档位于 command/dris.md与其配套的 command/dirs.md、command/pushd.md、command/popd.md 共同构成了完整的目录堆栈命令族。dris 语法与选项语法dris(选项)注意dris本身即dirs的另一种拼写形式二者在 bash 中指向同一功能显示目录堆栈。在 bash 中更标准的写法是dirs完整语法为dirs [-clpv] [N] [-N]选项说明原手册给出的三个选项如下n显示从左边算起第n笔的目录 -n显示从右边算起第n笔的目录 -l显示目录完整的记录。结合 command/dirs.md 的完整选项表可以整理出更全面的参数体系选项/参数含义-c清空目录堆栈-l堆栈内以~开头的目录在显示时展开为完整路径-p将目录堆栈内的每一个目录按行显示-v将目录堆栈内的每一个目录按行显示并在每行前加上堆栈内的位置编号N显示不带参数执行dirs命令所得列表中左起的第 N 个目录从 0 开始计数-N显示不带参数执行dirs命令所得列表中右起的第 N 个目录从 0 开始计数返回值返回成功除非提供了非法选项或执行出现错误。目录堆栈三件套dirs / pushd / popddrisdirs单独使用只能看要真正操作目录堆栈必须与pushd、popd配合。bash 的目录堆栈命令族正是dirs、popd、pushd这三个内建命令见 command/pushd.md 与 command/popd.md 的注意说明。pushd压入并切换目录pushd将目录添加到目录堆栈顶部并默认切换当前工作目录到该目录使用-n选项可以抑制添加目录引起的当前工作目录变化。不带参数时pushd会交换目录堆栈的前两个目录。pushd [-n] [N | -N | dir]N不带参数执行dirs命令显示的列表中左起的第 N 个目录将作为堆栈顶部在它前面的会移动到底部从 0 开始计数-N右起的第 N 个目录将作为堆栈顶部在它前面的会移动到底部dir要推送的目录。popd弹出并删除目录popd从目录堆栈中删除目录。如果是顶部目录被删除当前工作目录会切换到新的顶部目录-n选项可抑制删除目录引起的当前工作目录变化。没有参数时删除目录堆栈顶部。popd [-n] [N | -N]dirs查看堆栈内容dirs用于显示目录堆栈-c用于清空目录堆栈。当前目录始终是目录堆栈的顶部。实战示例构建、定位、旋转与清空堆栈以下示例完整演示了目录堆栈从构建到查看、定位、旋转再到清空的完整流程可在 bash 中直接运行验证。1. 查看当前堆栈并压入多个目录[user2pc ~]$ dirs ~ [user2pc ~]$ pushd -n ~/Desktop ~ ~/Desktop [user2pc ~]$ pushd -n ~/Pictures ~ ~/Pictures ~/Desktop [user2pc ~]$ pushd -n ~/bin ~ ~/bin ~/Pictures ~/Desktop这里使用pushd -n只压栈、不切换目录因此提示符始终停留在~。2. 以多种方式查看堆栈内容# 展开 ~ 为完整路径 [user2pc ~]$ dirs -l /home/user2 /home/user2/bin /home/user2/Pictures /home/user2/Desktop # 每个目录按行显示 [user2pc ~]$ dirs -p ~ ~/bin ~/Pictures ~/Desktop # 每个目录按行显示并带位置编号 [user2pc ~]$ dirs -v 0 ~ 1 ~/bin 2 ~/Pictures 3 ~/Desktop3. 按位置索引定位堆栈中的目录# 显示从左起第 2 个目录从 0 开始计数 [user2pc ~]$ dirs 2 ~/Pictures # 显示从右起第 2 个目录从 0 开始计数 [user2pc ~]$ dirs -2 ~/bin4. 旋转堆栈pushd的参数N/-N支持把堆栈中的指定目录旋转到栈顶[user2pc ~]$ pushd 1 ~/Pictures ~/Desktop ~ [user2pc ~]$ pushd -1 ~/Desktop ~ ~/Pictures5. 删除堆栈条目# 删除从右起第 2 个目录 [user2pc ~]$ popd -2 ~ ~/Pictures ~/Desktop # 删除从左起第 1 个目录 [user2pc ~]$ popd 1 ~ ~/Desktop # 无参数删除栈顶若栈顶即当前目录则切换工作目录 [user2pc ~]$ popd ~/Desktop [user2pc Desktop]$6. 清空堆栈[user2pc ~]$ dirs -c [user2pc ~]$ dirs ~清空后堆栈中仅保留当前工作目录~因为当前目录始终是目录堆栈的顶部这也是堆栈中永远至少存在一个目录的原因。结合源码理解 dris 在仓库中的定位在 linux-command 仓库中所有命令手册均以独立 Markdown 文件的形式存放在 command 目录下dris对应的源文件即为 command/dris.md。从构建脚本 scripts/build.mjs 可以看到npm run build会执行node scripts/build.mjsreadMarkdownPaths()扫描command目录下所有.md文件见 scripts/build.mjscreateDataJSON()解析每个 Markdown 文件——通过正则[^](?[])提取命令名称通过\n{1,}([\s\S]*?)##提取标题与第一个##小节之间的描述文字生成命令的n名称、p路径、d描述三项索引数据见 scripts/build.mjs最终把索引写入 dist/data.json 与dist/data.min.json供 web 版搜索引擎使用。在 dist/data.json 中可以找到dris的索引条目dris: { n: dris, p: /dris, d: 显示和清空目录堆栈中的内容。 }这说明dris已作为独立命令纳入仓库的 600 多个 Linux 命令索引体系可在 web 版搜索站点中直接检索到。也正因如此dris与dirs在仓库中分别建档查阅手册时两个入口均可使用。实用建议与注意事项dirs、popd、pushd是 bash 内建命令而非独立的外部程序相关帮助信息请查看help命令如help dirs。当前目录始终是目录堆栈的顶部无论堆栈如何旋转或清空栈中至少保留当前目录这一项。dirs的N/-N计数从 0 开始N从左起、-N从右起与pushd、popd的同类参数语义保持一致便于记忆。-l选项会把~展开为完整绝对路径在脚本日志或需要完整路径的场景下尤其有用-v输出的位置编号配合pushd N使用可以精确旋转堆栈。目录堆栈与 command/cd.md 中讲解的cd -切换回上一个工作目录互为补充前者适合多目录间的来回切换与批量管理后者适合上一个/下一个式的快速往返。在日常 shell 会话中建议优先使用dirs这一标准拼写dris作为本仓库收录的等价写法在查阅旧文档或他人配置时同样需要能够识别。赞分享文档教程【免费下载链接】linux-commandLinux命令大全搜索工具内容包含Linux命令手册、详解、学习、搜集。https://git.io/linux项目地址https://gitcode.com/GitHub_Trending/linux/linux-command点击查看免费下载相关推荐Linux 命令大全dirs 命令详解——Bash 目录堆栈的查看、清空与实战运用Linux 命令大全 dirs 命令详解——Bash 目录堆栈的查看、清空与实战运用 dirs 是 Bash 内建命令用于显示当前 shell 会话中的 目文档教程Linux 光盘刻录命令 cdrecord 实战指南linux-command 命令手册详解Linux 光盘刻录命令 cdrecord 实战指南linux command 命令手册详解 本篇指南聚焦 Linux 系统下的经典刻录命令 cdrecor文档教程linux-command 仓库详解bash export 命令完整指南linux command 仓库详解bash export 命令完整指南 export 是 bash 内建命令用于为 shell 变量或函数设置导出属性文档教程上一篇es-toolkit iterator 系列之 scan用「输出所有中间结果」的惰性折叠处理迭代器下一篇在 Home Assistant 中使用 netgear_lte.set_option 动作管理 NETGEAR LTE 调制解调器的连接策略创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
阅读完成 · 觉得有帮助?