shell 判断字符串是否存在数组中

语法格式: [[ "${array[@]}" =~ "字符串" ]]

示例:

#!/bin/sh
##数组
array=(
address
base
cart
company
store
)

# $1 如果存在,输出 $1 exists,$1 如果不存在,输出 $1 not exists
if [ "$1" != null ];then
  if [[ "${array[@]}"  =~ "${1}" ]]; then
    echo "$1 exists"
  elif [[ ! "${array[@]}"  =~ "${1}" ]]; then
    echo "$1 not exists"
  fi
else
  echo "请传入一个参数"
fi

扩展:
这种方式不仅可以判断字符串是否存在数组中,也快判断字符串是否存在一个文本中。

## 判断字符串是否存在文本中
#!/bin/sh

names="This is a computer , I am playing games in the computer"
if [[ "${names[@]}"  =~ "playing" ]]; then
  echo '字符串存在'
fi

猜你喜欢

转载自blog.csdn.net/m0_37886429/article/details/106545946