Linux shell生成数组及数组元素求和
#!/bin/bash echo "Enter a number:" read num i=1 # 创建空数组 ret=() while(( $i<=$num )) do abc=`expr $i % 2` if [ $abc -ne 0 ] then # 在数据尾部插入数据 ret[${#ret[*]}]=$i fi i=`expr $i + 1` done # 输出数组全部元素 echo ret: "${ret[*]}" # 遍历数据并求和 i=1 sum=0 str='' for x in ${ret[*]} do sum=`expr $sum + $x` if [ $str ]; then str="$str"'+'"$x" else str=$x fi done end="$str"' = '"$sum" # 把'+'号替换为' + ' echo $end | sed 's/+/ + /g'
注意用bash命令执行:
➜ /tmp bash a.sh Enter a number: 5 ret: 1 3 5 1 + 3 + 5 = 9