shell 判断数组中是否含有指定字符串 完成匹配
时间: 2023-08-08 11:02:33 浏览: 242
Shell编程范例之字符串操作-TinyLab原创
在Shell脚本中,我们可以使用循环来判断数组中是否含有指定字符串,并完成匹配。具体的实现可以采用以下步骤:
1. 定义一个包含多个字符串的数组,例如:arr=("apple" "banana" "cherry" "date")
2. 使用循环遍历数组中的每个元素,并与指定字符串进行比较。
3. 在循环中,使用条件语句判断当前遍历的数组元素是否与指定字符串相等。
4. 如果有相等的元素存在,设置一个标志位为真,表示数组中含有指定的字符串。
5. 循环结束后,根据标志位的值进行相应的处理。
下面是一个简单的示例代码:
```shell
#!/bin/bash
arr=("apple" "banana" "cherry" "date")
target="banana"
found=false
for item in "${arr[@]}"; do
if [ "$item" = "$target" ]; then
found=true
break
fi
done
if [ "$found" = true ]; then
echo "数组中含有指定的字符串"
else
echo "数组中不含有指定的字符串"
fi
```
这段代码中,我们定义了一个含有4个字符串的数组arr,并指定了目标字符串为"banana"。循环遍历数组的每个元素,如果找到与目标字符串相等的元素,则将found标志位设置为true,并跳出循环。最后,根据found标志位的值进行相应的输出。
需要注意的是,在Shell脚本中,字符串的比较使用双等号"=="或单等号"=",而不是通常的字符串比较函数。
阅读全文