约 2966 字

约 15 分钟

#Bash 的 dirname 命令

dirname OPTION... NAME...

功能

提取文件路径中的目录(从文件路径中删除最后一个组成部分)。

类型

可执行文件(/usr/bin/dirname),属于 coreutils。

参数

  • OPTION 选项:
    • -z, --zero - 以空字符(\0)作为行的结尾,而不是换行符(\n)
    • --help - 显示帮助
    • --version - 显示版本
  • NAME - 文件路径列表;不要求文件存在

#示例

绝对路径

$ dirname /path/to/file.txt
/path/to
$ dirname /path/to
/path
$ dirname /path
/
$ dirname /         # 根目录会得到自身
/

相对路径

$ dirname ./path/to/file.txt
./path/to
$ dirname path/to/file.txt
path/to
$ dirname ./path/../path/to/file.txt
./path/../path/to
  • 只会删除路径的最后一个组成部分,不会简化路径

#相关命令

命令说明
basename从文件路径中去除目录和后缀
realpath解析路径

#推荐阅读

#手册

更新: 2026/1/18

作者: PlanC

创建: 2025/10/29