【发布时间】:2016-04-27 21:50:58
【问题描述】:
我有一个像a=( 1 3 2 34 5) 这样的数组
我想比较彼此相邻的值(比较 1 和 3、比较 3 和 2、比较 2 和 34,等等)。
如果相同则打印消息 1,否则打印消息 2。
a=( 1 1 2 34 5)
len=${#a[@]}
for i in `seq 0 $len`
do
if [ ${a[i]} -eq ${a[i+1]} ]; then
echo "values are same"
else
echo "values are different"
fi
完成
比较值 34 和 5 后,抛出错误。
+ '[' 34 -eq 5 ']'
+ echo 'values are different'
values are different
+ for i in '`seq 0 $len`'
+ '[' 5 -eq ']'
b.sh: line 27: [: 5: unary operator expected
+ echo 'values are different'
-谢谢
【问题讨论】:
-
欢迎来到 StackOverflow!我们很乐意在这里提供帮助,但我们不是代码编写服务。向我们展示您迄今为止尝试过的一些 sn-ps,我们将帮助您弄清楚如何使其发挥作用。
-
你还能显示示例输入和输出吗?