如果条件
,这是我的shellcriptif [[ $RBFilePath =~ \.js$ || $RBFilePath =~ \.json$ && ${#key_array[0]} = "JAVASCRIPT" ]]; then
Blah blah
blah blah
fi
我想要的是,如果$RBFilePath
以.js
或.json
结束,数组的第一个元素:key_array
等于到"JAVASCRIPT"
然后执行if块。
但它没有执行。有人可以帮忙告诉我问题。?
答案 0 :(得分:2)
该语句不正确,因为它检查数组第一个元素的长度
${#key_array[0]} = "JAVASCRIPT"
将其更改为
${key_array[0]} = "JAVASCRIPT"
检查数组中第一个元素的值。
e.g。
fooArray=('foo' 'bar')
printf "%s\n" "${#fooArray[0]}"
3
printf "%s\n" "${fooArray[0]}"
foo