比较两个数组值是否相等 |索引到索引 |

比较两个数组值是否相等 |索引到索引 |

我有一个场景,我想比较 array1 和 array2 的值

echo "${array1[@]}"

给我输出1: 12.12 10.1

echo "${array2[@]}"

给我输出2: 12.12 10.1

如何比较 array1 值与 array2 如下

array1[0]=array2[0]
array1[1]=array2[1]

12.12 12.12
10.1 10.1

如果匹配则显示

回声 “成功”或“失败”

成功 - 当 array1 中的所有数据与 aray2 [索引到索引] 匹配时

失败 - 当索引与索引值不匹配时失败

答案1

您可以将数组作为字符串进行比较:

if [[ "${array1[*]}" == "${array2[*]}" ]]; then
  echo success
else
  echo FAIL
fi

[*]请注意not的使用[@]——第一个将元素连接成单个字符串(使用 $IFS 的第一个字符作为连接符)。

相关内容