我一直在处理我的脚本文件,应该对数字列表求和,然后从数组中计算大于100的任何数字。当我执行脚本时,我的计数为空,因为它只计数数组中的最后一个数字,即17,并且小于100。我通过放置大于2的值对其进行了测试,并在运行它时显示了最后一个数字(17)只。对于在shell中创建if / then语句,我还很陌生,因此,如果有什么地方看起来不合适,或者如果我缺少什么,请告诉我。谢谢你。
下面是我的代码:
#!/bin/sh
sum=0
array=(12 43 16 55 243 312 17)
for i in ${array[@]}; do
echo $i;
let sum+=$i
done
echo Total = $sum
if [ $i -gt 2 ]; then
echo $i
fi
请检查并保持计数在循环中,而不是紧随其后。
#!/bin/sh
sum=0
array=(12 43 16 55 243 312 17)
for i in "${array[@]}"; do
echo "$i";
let sum+="$i"
if [ $i -gt 2 ]; then
echo "$i is greater than 2"
fi
done
echo "Total = $sum"
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句