shenanshenan 发表于 2013-06-27 20:09

linux shell 请教

#new.sh
#!/bin/bash

moduleName=$1
allParam=$@

functionisStrInParam
{
   echo $1
   echo $1 | grep -q $2
}

isStrInParam $allParam'new'

echo $?

运行:./new3.sh a2000 tecno new

结果:
a2000//原先认为此处结果应该是: a2000 tecno new
1       //原先认为结果应该是: 0

此程序本来目的是想判断 new字串是否在所有的参数里面,不知道为什么结果会是这样?
望各位大侠指教,谢谢!

shreychen 发表于 2013-06-27 21:33

isStrInParam “$allParam”'new'

shenanshenan 发表于 2013-06-29 09:15

非常感谢,问题得以解决,不过想加问一下,为什么会这样呢?

357749340 发表于 2013-07-05 13:58

学习了,高手啊

weishuo1999 发表于 2013-07-16 17:19

空格隔开了呗,双引号内的内容当成一个变量回复 2# shreychen


   
页: [1]
查看完整版本: linux shell 请教