sh/bash/dash/ksh/zsh等Shell脚本
-
novesky
- 帖子: 159
- 注册时间: 2008-07-12 17:18
#1
帖子
由 novesky » 2008-07-27 15:04
代码: 全选
myfile=`basename $0`
mypath=`echo $0 | sed -e 's/'$myfile'//g'`
手机的很多脚本里有这个,具体什么意思不清楚,麻烦DX们解释一下
-
xiooli
- 帖子: 6956
- 注册时间: 2007-11-19 21:51
- 来自: 成都
-
联系:
#2
帖子
由 xiooli » 2008-07-27 15:23
比如说你某个文件的全路径是/bin/bash吧,那么myfile就会获得该文件的文件名“bash”,而mypath则取得其路径“/bin/”
-
novesky
- 帖子: 159
- 注册时间: 2008-07-12 17:18
#3
帖子
由 novesky » 2008-07-27 15:32
xiooli 写了:比如说你某个文件的全路径是/bin/bash吧,那么myfile就会获得该文件的文件名“bash”,而mypath则取得其路径“/bin/”
有点看懂了,谢谢
-
79hy
- 帖子: 80
- 注册时间: 2007-10-24 10:21
- 来自: 长沙
#4
帖子
由 79hy » 2008-07-28 11:09
代码: 全选
mypath=`echo $0 | sed -e 's/'$myfile'//g'`
这个写的不好,既然前面用了basename,后面取路径不就用个dirname不就完了,还替换????
-
novesky
- 帖子: 159
- 注册时间: 2008-07-12 17:18
#6
帖子
由 novesky » 2008-08-02 11:17
basename 取的是没有后缀的文件名,如果要取有后缀的文件名怎么操作?
-
Tobey
- 帖子: 178
- 注册时间: 2006-03-30 13:34
#7
帖子
由 Tobey » 2008-08-03 16:39
谁说是没有后缀的?
取的就是除路径外的整个文件名。
-
novesky
- 帖子: 159
- 注册时间: 2008-07-12 17:18
#8
帖子
由 novesky » 2008-08-08 11:16
Tobey 写了:谁说是没有后缀的?
取的就是除路径外的整个文件名。
是我错了