千家信息网

linux dirname命令的用法

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章给大家分享的是linux dirname命令的用法。小编觉得挺实用的,因此分享给大家学习。如下资料是关于linux dirname命令的使用示例。NAMEdirname - strip las
千家信息网最后更新 2026年11月02日linux dirname命令的用法

这篇文章给大家分享的是linux dirname命令的用法。小编觉得挺实用的,因此分享给大家学习。如下资料是关于linux dirname命令的使用示例。

NAME
dirname - strip last component from file name
示例一 来自手册页的例子
$ dirname /usr/bin/sort
/usr/bin
$ dirname stdio.h
.
示例二
$ dirname /usr/bin
/usr
$ dirname /usr/bin/
/usr
脚本中获取 脚本文件所在的绝对路径
shellPath=$(cd "$(dirname "$0")"; pwd)
echo $shellPaht

用途说明
dirname命令可以取给定路径的目录部分(strip non-directory suffix from file name)。这个命令很少直接在shell命令行中使用,我一般把它用在shell脚本中,用于取得脚本文件所在目录,然后将当前目录切换过去。根据手册页上说的"Print NAME with its trailing /component removed; if NAME contains no /'s, output '.' (meaning the current directory).",似乎说"取给定路径的目录部分" 并不能很准确的概括dirname命令的用途。Linux下还有一个命令是basename,它与dirname相反,是取得文件名称部分。

常用参数
无。

使用示例
示例一 来自手册页的例子
[root@qzt196 ~]# dirname /usr/bin/sort /usr/bin [root@qzt196 ~]# dirname stdio.h . [root@qzt196 ~]#

示例二
[root@qzt196 ~]# dirname /usr/bin /usr [root@qzt196 ~]# dirname /usr/bin/ /usr

注意:此处的输出结果,似乎有点怪。这应该看下dirname命令的源代码才能解释了。

示例三 在bash脚本中的运用
Bash代码 收藏代码
#!/bin/sh

跳转到脚本所在目录

cd $(dirname "$0") || exit 1

剩下的部分

这个写法我经常用到,因为有时候脚本执行时无法确定是在哪个目录,比如脚本用在crontab中时。

另一个写法是:cd dirname $0 其中反引号··等同于$()。

示例四 与另外一种截取目录的方法的比较
可以用${pathname%/*}截取掉pathname后面的文件部分。

[root@jfht ~]# pathname=/usr/bin/sort; echo $(dirname $pathname) ${pathname%/} /usr/bin /usr/bin [root@jfht ~]# pathname=/usr/bin/; echo $(dirname $pathname) ${pathname%/} /usr /usr/bin [root@jfht ~]# pathname=/usr/bin; echo $(dirname $pathname) ${pathname%/} /usr /usr [root@jfht ~]# pathname=/usr/; echo $(dirname $pathname) ${pathname%/} / /usr [root@jfht ~]# pathname=/usr; echo $(dirname $pathname) ${pathname%/} / [root@jfht ~]# pathname=/; echo $(dirname $pathname) ${pathname%/} / [root@jfht ~]# pathname=stdio.h; echo $(dirname $pathname) ${pathname%/*} . stdio.h [root@jfht ~]#

关于dirname命令的用法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

命令 示例 脚本 目录 部分 文件 所在 手册 路径 代码 例子 写法 更多 用途 不错 实用 内容 参数 名称 常用 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 深圳市人人互联网科技有限公司 科技互联网公司装修 互联网科技公司电话 为想互联网科技 友谊互联网络科技 广西互联网科技公司 融贸通互联网科技 西藏七维空间互联网科技有限公司 互联网科技博主是什么意思 上海宁丞科技互联网 和信科技工业互联网 天津腾达互联网科技有限公司 高科技互联网发展前景如何 长沙茂晟互联网科技有限公司 为客找房互联网科技公司怎么样 互联网金融科技元年 杭州披云加互联网科技有限公司 工业互联网科技创业 广州智享互联网科技 科技美学互联网 艺术 互联网高科技股票 互联网科技公司介绍 小米互联网科技园设置 欧洲十大科技互联网公司 贵州叶脉互联网科技有限公司所属行业 花神(南京)互联网科技有限公司 互联网金融科技展 滨湖区互联网智能科技产品有哪些 互联网营销推广黑科技 信承诺互联网科技有限公司
0