我有一个大文本文件。我需要提取包含确切单词“DUSP1”的所有行。这是行的示例:
9606 ENSP00000239223 DUSP1 BLAST
9606 ENSP00000239223 DUSP1-001 Ensembl
我想检索第一行而不是第二行。
我尝试了几个命令:
grep -E "^DUSP1"
grep '\<DUSP1\>'
grep '^DUSP1$'
grep -w DUSP1
但它们似乎都不起作用。我应该使用哪个选项?
我有一个大文本文件。我需要提取包含确切单词“DUSP1”的所有行。这是行的示例:
9606 ENSP00000239223 DUSP1 BLAST
9606 ENSP00000239223 DUSP1-001 Ensembl
我想检索第一行而不是第二行。
我尝试了几个命令:
grep -E "^DUSP1"
grep '\<DUSP1\>'
grep '^DUSP1$'
grep -w DUSP1
但它们似乎都不起作用。我应该使用哪个选项?
如果你想准确地 grep 整个单词,你可以使用这样的单词边界:
grep '\bDUSP1\b'
这匹配开头和结尾的确切单词。
您面临的问题是破折号(-) 被视为grep
单词分隔符。
你应该试试这个命令:
grep '\sDUSP1\s' file
以确保您的单词周围有空格。
或使用单词边界:
grep '\bDUSP1\b' file
除了 sputpick 所说的,它可能是那个或者:
grep '\sDUSP1$' file
如果 DUSP1 是行尾。