Chinaunix首页 | 论坛 | 博客
  • 博客访问: 499088
  • 博文数量: 401
  • 博客积分: 244
  • 博客等级: 入伍新兵
  • 技术积分: 2215
  • 用 户 组: 普通用户
  • 注册时间: 2012-08-04 10:02
文章分类

全部博文(401)

文章存档

2013年(37)

2012年(364)

分类:

2012-09-19 09:47:18



在shell脚本编程中,有的时候希望得到某个文件的目录信息或者去掉路径的文件 名信息。

dirname和basename就是这样的两个命令。


1 dirname: 去除文件中非目录部分


语法格式:dirname [option] [argument]


argument: 带目录的文件名,如/usr/bin/emacs


实例: 仅仅显示文件名中的目录信息

~/audio/Bash/Source$ dirname /usr/bin/emacs /usr/bin

如果参数没有斜线,那么它就会打印一个'.',表示当前目录

~/audio/Bash/Source$ dirname emacs.el .


2 basename: 去掉文件名中的路径和后缀

语法格式:basename [option] [argument] 

argument: 

文件:带有路径信息的文件名,如/usr/bin/emacs 

后缀:如果带有此项,则表示取出相应后缀,不带不去除。


实例: 如果没有后缀,则显示带后缀的文件名

~/audio/Bash/Source$ basename /usr/bin/emacs.el emacs.el

有后缀的话,会显示去除后缀的文件名

~/audio/Bash/Source$ basename /usr/bin/emacs.el .el emacs

阅读(306) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~