LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 752|回复: 8

请教各位if [ " $ { 1##*. " = "tar"] 中的##

[复制链接]
发表于 2004-9-7 17:30:59 | 显示全部楼层 |阅读模式
请教各位if [ " $ { 1##*. " = "tar"] 中的##*是什么意思呀
发表于 2004-9-7 17:51:50 | 显示全部楼层
判断第一个参数是否为tar文件
发表于 2004-9-7 21:03:11 | 显示全部楼层

回复: 请教各位if [ " $ { 1##*. " = "tar"]

最初由 zijingppp 发表
请教各位if [ " $ { 1##*. " = "tar"] 中的##*是什么意思呀

##*.应该是:代表开头到最后一个点之间的任何东东
PS:这样的表达式好像有问题:help
发表于 2004-9-7 23:22:29 | 显示全部楼层
发表于 2004-9-8 12:09:34 | 显示全部楼层
最初由 zdl333 发表
判断第一个参数是否为tar文件


最后一个链接里的花括号都是成对的,为什么这个例中只有左边的啊
还有第一个参数的话不是$1吗?为什么1会在花括号右边呢

请大虾们来解答啊
发表于 2004-9-8 16:18:27 | 显示全部楼层

  1. if [ "${1##*.}" = "tar" ]
复制代码
发表于 2004-9-8 17:51:50 | 显示全部楼层
最初由 home_king 发表

  1. if [ "${1##*.}" = "tar" ]
复制代码

我想如果要表示第一个参数的话,是不是在里面还要加一个$即:
if [ "${$1##*.}" = "tar" ]
不知道我是不是哪儿理解错了?
发表于 2004-9-8 21:40:15 | 显示全部楼层
例如:  $name , ${name} 是变量name的不同引用方法,后者多数用于容易把变量名和后面的字母划分不开的场合。 不知道我这样的理解对不对,还请指教。
发表于 2004-9-9 14:04:10 | 显示全部楼层
${1##*.} 匹配字符串最后遇到"."后的字串 比如 aa="asb.tar.Z"
${aa##*.}就是Z 大家可以实际操作下,这样更有印象了..
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表