检查字符串索引存在

时间:2015-06-16 11:53:45

标签: linux bash

如何检查数组中是否存在字符串索引,例如

declare -A SArray
SArray[a]="a"
SArray[b]="b"

read index

现在索引我想检查SArray中是否存在索引

2 个答案:

答案 0 :(得分:2)

#!/bin/bash

declare -A SArray
SArray[a]="a"
SArray[b]="b"
read index

if test "${SArray["$index"]+isset}"; then
    echo "index $index exists for SArray"
else
    echo "no index $index for SArray"
fi

答案 1 :(得分:0)

bash 4.3中,您可以使用-v运算符。

if [[ -v SArray[a] ]]; then
    echo "${SArray[a]}"
else
    echo "a is not a key in Sarray"
fi