如何根据部分输入来对完整单词进行grep?

时间:2018-10-23 06:23:17

标签: linux bash shell grep

我有一个文件text.txt,其中包含以下单词。

 1. moon,one
 2. sun,two
 3. well,three
 4. doll,four

如果我使用grep sun

grep -i sun text.txt

我将获得输出

sun,two

但是,我的要求是我需要grep开头不是sun的单词。

grep -i sunlight text.txt

这里我需要grep -i sun text.txt的相同输出。

4 个答案:

答案 0 :(得分:0)

您要寻找的是regular expressions

您的情况应该是

/Users/user/devel/acomapplication/https:/www.google.co.jp/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png

答案 1 :(得分:0)

这是您要找的吗?

awk -F ',' '/^[SsuUnN]/ {print $0}' test.txt

或者如果您想从input_file中搜索模式“ sun”,请使用以下方法:

awk -F ',' 'BEGIN{IGNORECASE=1} /sun/ {print $0}' test.txt

答案 2 :(得分:0)

尝试使用documentation中显示的-o

-o使grep仅返回匹配的部分。您也可以使用regular expressions

  

grep -io sun text.txt

答案 3 :(得分:0)

您不需要awk或gawk,也不需要sed。随便

grep -o 'sun.*'

根据您所使用的系统,可能会提供其他更复杂/更优雅的解决方案。