Chinaunix

标题: 简单的shell报argument expected错误 [打印本页]

作者: rich_ying    时间: 2015-10-29 09:02
标题: 简单的shell报argument expected错误
while true
do
   echo "请输入数据:\c"
   read AA
   if [ -Z $AA ];then
      echo "is null"
   else
      break
   fi
done

echo AA=$AA
----------------------------------
执行后,当没有输入时,报is null,这是正常.
当输入abcd后,报:
1.sh[5]: test: argument expected    <<===这一句话是什么原因引起的?
echo AA=abcd

作者: 欧阳西风    时间: 2015-10-29 09:22
回复 1# rich_ying


    if [ -z $AA ];then

这个地方应该是小写的z吧?
作者: rich_ying    时间: 2015-10-29 09:41
欧阳西风,你错了,小写的z是错误的。
作者: chengchow    时间: 2015-10-29 10:31
小z,另外$AA可以考虑改成"$AA"




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2