[英]Bash- add up two arrays variables' to third array's variable
我有三个arrays A, B, C
。 数组AB值正在从文件中解析,我希望它们加到array C
。
#!/bin/bash
i=0
A=()
B=()
C=()
while read line
do
A[i]="$(echo $line| cut -d\ -f4)"
B[i]="$(echo $line| cut -d\ -f11)"
echo ${A[i]} " and " ${B[i]}
# outputs correct values
C[i]=`expr ${A[i]} + ${B[i]}`
echo ${C[i]}
# no output
i=$((i+1))
done < ~/file
exit 0
该作业有什么问题?
脚本中的完整行:
hitEnd[i]=`expr ${hitLength[i]}+${hitStart[i]}`
echo "${hitEnd[i]}"
#no output
该行:
C[i]=`expr ${A[i]} + ${B[i]}`
如果两个操作数之一丢失,则给出错误。 如果这是预期的,即文件中有空字段,则:
C[i]=$((${A[i]:-0}+${B[i]:-0}))
应该管用。
该脚本看起来正确。 您可能无法正确构造数组。
并且始终双引号变量以避免某些错误。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.