簡體   English   中英

在 Bash 中一起添加和列出數組的元素

[英]Adding adding and listing elements of an array together in Bash

我對 bash 很陌生,目前正忙於一個小項目。 我試圖列出每個數組(num1 和 num2)的組合分數,然后使用 C 樣式循環顯示 output。 這是我想要的 output:

Result_1: 71
Result_2: 96
Result_3: 101
Result_4: 86
Result_5: 148

如您所見,num1 數組中的第一個數字與 num2 數組的第一個數字相加形成 Result_1,num1 數組中的第二個數字與 num2 數組中的第二個數字相加形成 Result_2.. 和很快。 但是,當這不是我所追求的時,我只能獲取並顯示所有結果的前兩個數字(13 和 58 = 71)的總和。 我也希望將第一個結果作為“Result_1”而不是“Result_0”,但似乎也無法弄清楚。 這是我當前的代碼:

#!/bin/bash

num1=(13 28 11 72 50)
num2=(58 68 90 14 98)
len=${#num1[*]}

for (( i=0; i<${len}; i++ ));
do
    sum=$(($num1 + $num2))
    echo "Result_"$i":" $sum
done

任何幫助將不勝感激。 謝謝!

您只是忘記將索引鏈接到數組。 以下循環將完成正確的工作。

for (( i=0; i<${len}; i++ ))
do
    sum=$((${num1[$i]} + ${num2[$i]}))
    echo "Result_$(($i+1)):" $sum
done

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM