shell中判断一个字符串是否在另一个字符串中的几种示例代码
时间: 2024-10-27 10:14:47 浏览: 7
Shell中去除字符串前后空格的方法
5星 · 资源好评率100%
在shell脚本中,你可以使用几种不同的内置命令或正则表达式来判断一个字符串是否存在于另一个字符串中。以下是几种常见的示例:
1. **`grep`** (全局搜索):
```bash
if [[ $str1 =~ $str2 ]]; then
echo "找到了"
else
echo "没找到"
fi
```
这里使用`=~`操作符和正则表达式匹配,如果`$str2`出现在`$str1`中,则条件为真。
2. **`echo`** 和 `if` 判断:
```bash
if [ "$str1" =*$str2* ]; then
echo "包含"
else
echo "不包含"
fi
```
使用`=`运算符检查`str1`是否以`str2`开头或结尾。
3. **`awk`** (强大的文本处理工具):
```bash
if awk -v pattern="$str2" '$0 ~ pattern' <<< "$str1"; then
echo "包含"
else
echo "不包含"
fi
```
awk会检查`str1`是否匹配正则`str2`。
阅读全文