我正在尝试在bash脚本中运行以下逻辑
for i in {1..30}:
do
printf $i
if (( $i!=30 )); then
printf ","
fi
done
经过数小时的Google搜索,我发现在if条件下,方括号[ ]
用于字符串比较,而圆括号用于算术运算(( ))
。我还发现-ne
用于字符串,!=
必须用于算术运算。
尽管尽了最大的努力,但我无法成功运行这种简单的逻辑,我需要运行30次循环并用逗号打印输出,但是在上一次迭代中跳过了逗号。
答案 0 :(得分:1)
您只需在第一行花括号后删除冒号:
:
for i in {1..30}
do
printf $i
if (( $i!=30 )); then
printf ","
fi
done
这会打印您想要的内容:
1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30