我正在使用bash,这是我的代码
for i in $(seq 20)
do
if [ $i % 3 == 0 ]
then
echo HI
else
echo $i
fi
done
所以输出应该是: 1 2 嗨 4 五 嗨 ... 等等。 但是当我运行shell时,我一直收到这个错误。 script.sh 4:[:1:意外的运算符 1 然后它会一直持续到20岁。 我尝试了不同的东西,但我无法让它发挥作用。
答案 0 :(得分:3)
更简单:
MyXmlRoot
答案 1 :(得分:1)
您需要将包含if
的行更改为:
if [[ $((i%3)) == 0 ]]
这将有效。
答案 2 :(得分:0)
使用此
for i in {1..20}
do
if [ `expr $i % 3` == 0 ]
then
echo HI
else
echo $i
fi
done
答案 3 :(得分:0)
应该是下面提到的格式,
如果[$ i%3 == 0]; 然后
但如果你引入“==”符号,它只会产生1到20的增量值。