Bash代码为:
sum=0
for ((i=1i<=100i++))do
((sum += i))
done
echo $sum
运行结果如下:
输出为5050,结果正确,望采纳~
for循环在读入的时候是从一个大字符串中进行分割,而分割的标识是IFS,IFS默认分隔符是空格\tab\换行,所以会将换行符和空格同样对待,所以需要更改IFS的分割标志.解决方案:添加代码OLDIFS=$IFSIFS=$'\n'IFS=$OLDIFS123注意: 这里将IFS的分割标志换成了 $’\n’ 换行符,如果写成’\n’仅仅表示字母n 《Linux就该这么学》一起学习linux结果: 每一次for循环能够得到正确的文件名,但是在执行mv命令时依然报错,原因是文件名中有空格,不能找到正确的文件欢迎分享,转载请注明来源:内存溢出
评论列表(0条)