我在脚本中尝试grep一些字符串。 我不知道我找到了什么字符串或者我正在尝试找到它的文件。我只需要从文件中获取grep 完全字符串。
所以,我的问题是,有时greping字符串包含方括号,而且我发现,grep认为它们是特殊字符。
string='some [text]'
grep "$string" file
我可以用sed
逃脱它们string='some [text]'
grep "$(sed -e 's/\[/\\[/g' <<< "$string")" file
无论输入是什么,我都需要grep来匹配精确的字符串。那么有更好的方法吗?某种方式告诉grep将字符串中的每个字符都视为常规字符?如果不是,是否还有其他特殊字符,如[我需要担心?
答案 0 :(得分:5)
您可以使用-F
选项将其解释为固定字符串:
grep -F "$string" file