分页: 1 / 1
shift和命令行参数的问题
发表于 : 2008-12-18 23:22
由 Dic4000
test.sh的脚本内容如下:
代码: 全选
#!/bin/bash
echo $@;
echo '$1='$1;
shift;
echo '$1='$1;
shift;
echo '$1='$1;
if [ -n $1 ]
then echo NonEmpty,$1;
else echo Empty ;
fi;
在终端下执行
bash test.sh a b
结果是
代码: 全选
a b
$1=a
$1=b
$1=
NonEmpty,
请问最后一次Shift后,$1为什么不为空? 难道不应该打印Empty吗?
Re: shift和命令行参数的问题
发表于 : 2008-12-19 18:47
由 ago1414
if [ -n $1 ]
then echo NonEmpty,$1;
else echo Empty ;
fi;
變更為
if [ -n "$1" ]
才會正確!!