变量模式的grep:echo"${foo}"grep“'${bar}'&引用;

变量模式的grep:echo"${foo}"grep“'${bar}'&引用;,grep,Grep,我将需要grep一个变量作为变量模式 像这样 foo="--test2" bar="--test" echo "${foo}" | grep "'${bar}'" 不幸的是,它不起作用 关于如何实现这一点有什么想法吗?您的模式以-领先,需要-e选项 这一行应该适用于您的示例: echo "${foo}" | grep -e "${bar}" 您的模式以-开头,需要-e选项 这一行应该适用于您的示例: echo "${foo}" | grep -e "${bar}" 如果使用单引号,它将

我将需要grep一个变量作为变量模式

像这样

foo="--test2"
bar="--test"
echo "${foo}" | grep "'${bar}'"
不幸的是,它不起作用


关于如何实现这一点有什么想法吗?

您的模式以
-
领先,需要
-e
选项

这一行应该适用于您的示例:

 echo "${foo}" | grep -e "${bar}"

您的模式以
-
开头,需要
-e
选项

这一行应该适用于您的示例:

 echo "${foo}" | grep -e "${bar}"

如果使用单引号,它将作为文本字符串。删除单引号。然后它将在字符串中抛出
--
的错误。为此,请使用
-e
选项来表示要匹配的模式

echo "${foo}" | grep -e "${bar}"

如果使用单引号,它将作为文本字符串。删除单引号。然后它将在字符串中抛出
--
的错误。为此,请使用
-e
选项来表示要匹配的模式

echo "${foo}" | grep -e "${bar}"

也谢谢你。同样的回答,同样的工作状态。Karthikeyan.R.S只快了一分钟,所以我把他的答案标记为正确。你的也是。@lockdoc重要的是,你的问题得到解决。哪一个答案被接受是可以的。但是您应该将上述注释中的单词
改为
:-)哦,对不起,我完全误解了时间显示我的错,也谢谢你。同样的回答,同样的工作状态。Karthikeyan.R.S只快了一分钟,所以我把他的答案标记为正确。你的也是。@lockdoc重要的是,你的问题得到解决。哪一个答案被接受是可以的。但是您应该将上述注释中的单词
改为
:-)哦,对不起,我完全误解了时间显示我的错。