如何grep文件中不区分大小写的字符串?
Posted
技术标签:
【中文标题】如何grep文件中不区分大小写的字符串?【英文标题】:How to grep for case insensitive string in a file? 【发布时间】:2018-07-07 15:02:40 【问题描述】:我有一个文件 file1
以
Success...
或
success...
我想以不区分大小写的方式为单词success
grep
。
我写了以下命令,但它区分大小写
cat file1 | grep "success\.\.\."
我怎样才能改变它,使它returns 0
与Success...
或
success...
【问题讨论】:
【参考方案1】:您可以使用-i
标志,使您的模式不区分大小写:
grep -iF "success..." file1
另外,不需要cat
。 grep
获取一个语法为 grep <pattern> <file>
的文件。我还使用-F
标志来搜索固定字符串以避免转义省略号。
【讨论】:
不简单的grep -i success file1
返回与此处预期相同的输出?
@User123 是的,但是-F
会搜索确切的字符串,而不进行任何正则表达式解析,因此如果您(就像 OP 所做的那样)在短语中有特殊字符,通常会更快更容易地输入你在寻找
对新手的可爱回答 - 不要说“哎呀,你做错了”,说“这是你问题的答案和额外的改进”。干得好!【参考方案2】:
对我来说 SQL=echo $line | grep -iF "SQL"
;
IT 完美运行
【讨论】:
你能解释一下这是做什么的吗?以上是关于如何grep文件中不区分大小写的字符串?的主要内容,如果未能解决你的问题,请参考以下文章
字符串属性的 gql 查询中不区分大小写的 where 子句