maxc1017 发表于 2018-8-27 08:28:14

shell脚本数组元素的数学运算

  今天在用shell脚本写斐波那契数列计算时,一直不停的报错,主要原因是因为shell脚本实在太不智能,在进行数组运算时需要写大量的符号,很容易混淆,所以稍微总结一下数组元素的计算。
  首先,有几种情况:
  1 在将一个数学运算结果赋值给某普通变量时:
  (1) let var=算术表达式
  (2) var=$[算术表达式]
  (3) var=$((算术表达式))
  (4) var=$(expr arg1 arg2 arg3 ...)
  2 在将一个数学运算结果赋值给某数组元素时:
  (1)let arr[$i]=arr[$[$i+1]]+arr[$[$i+2]];
  (2)arr[$i]=$]+arr[$[$i+2]]];/*此种情况在vim环境下,中括号会出现红色闪烁,似乎是报错了,实则非也,放心运行吧!*/
  (3)arr[$i]=$((arr[$[$i+1]]+arr[$[$i+2]]));
  显而易见,第一种是最简便的写法。不过当用到数组元素的计算时,依然容易混淆,还是熟能生巧咯 ^_^

页: [1]
查看完整版本: shell脚本数组元素的数学运算