检查bash数组值是否完全相同

Gop*_*h S 2 unix linux arrays bash sh

我有一个bash数组"RUN_Arr",其值如下所示.如果值相同,我希望脚本继续,否则我想报告它们.

echo "${RUN_Arr[@]}"
"AHVY37BCXY" "AHVY37BCXY" "AHVY37BCXY" "AHVY38BCXY" "AHVY37BCXY" "AHVY37BCXY"
Run Code Online (Sandbox Code Playgroud)

基于上面的数组,我想回应:

 No the array values are not same
 "AHVY37BCXY" "AHVY38BCXY"
Run Code Online (Sandbox Code Playgroud)

有人可以提出解决方案吗?谢谢.

hun*_*eke 6

迭代你的数组,并测试水印:

arr=(a a a b a a a)

watermark=${arr[0]}
for i in "${arr[@]}"; do
    if [[ "$watermark" != "$i" ]]; then
        not_equal=true
        break
    fi
done

[[ -n "$not_equal" ]] && echo "They are not equal ..."
Run Code Online (Sandbox Code Playgroud)

非常简单的概念证明; 显然适合你的目的.