我有一个包含以下内容的文件:
commA6314 ifosfamide 0 12
home5341209 urokinase 6314 37
如何搜索第一列然后显示整行。例如,如果用户搜索(请注意,第一行第一列6314
有一个,第三列第二行有另一个),输出应该是:6314
6314
commA6314 ifosfamide 30 12
答案1
这是一个经典的用例awk
awk '$1 ~ /6314/' file
或者,如果您想将要匹配的模式作为变量传递
awk -v pat="6314" '$1 ~ pat' file
Perl 中的类似方法
perl -ane 'print if $F[0] =~ /6314/' file