Chinaunix首页 | 论坛 | 博客
  • 博客访问: 531054
  • 博文数量: 81
  • 博客积分: 1438
  • 博客等级: 上尉
  • 技术积分: 866
  • 用 户 组: 普通用户
  • 注册时间: 2011-06-12 11:32
文章分类

全部博文(81)

文章存档

2014年(1)

2013年(1)

2012年(33)

2011年(46)

分类: LINUX

2011-10-18 09:33:56

    Linux下获得目录路径比较常用的是pwd命令和getcwd()函数了,但是有时候并不能很容易的match一些比较常用的需求。
    问题来自闪电的一个问题,他写了一个程序放在一个文件夹里面交给客户,这个文件夹里面有若干应用程序和若干文件,客户可以把这个文件夹放在任意的目录,然后客户使用绝对路径跑文件夹里面的一个序:/program/a/b/c/d/e/folder/fgh.sh,在客户跑的fgh.sh这个程序里要用到和它在同一个文件夹的其他文件:/program/a/b/c/d/e/folder/1.txt。这样就需要在fgh.sh这个程序里面得到它所在目录的绝对路径: /program/a/b/c/d/e/folder。
    pwd命令只能得到当前目录,也就是跑程序时所在的目录,但不能得到程序所在的目录。
    dirname恰好就能实现这个功能,能得到程序所在的目录.
    使用dirname $0就可以解析出所要的绝对路径/program/a/b/c/d/e/folder。

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