Regex 使用awk打印与正则表达式匹配的列

Regex 使用awk打印与正则表达式匹配的列,regex,bash,awk,Regex,Bash,Awk,我试图让awk打印第六列,如果它匹配我的正则表达式,但现在它只返回1 awk-vofs='\t'{'print$3、$4、$5、$6~/([^07].*)/'} 我错过了什么?我不能真正使用grep,因为第四列与第六列以相同的字符开头 如果它以07开头,我希望它打印该列 您的语法错误,需要使用: awk -v OFS='\t' '$6 ~ /^07/ {print $3, $4, $5, $6}' file i、 e.匹配正则表达式作为条件,然后在{…}块中打印所选列。谢谢,但它似乎忽略了正

我试图让awk打印第六列,如果它匹配我的正则表达式,但现在它只返回1

awk-vofs='\t'{'print$3、$4、$5、$6~/([^07].*)/'}
我错过了什么?我不能真正使用grep,因为第四列与第六列以相同的字符开头

如果它以07开头,我希望它打印该列

您的语法错误,需要使用:

awk -v OFS='\t' '$6 ~ /^07/ {print $3, $4, $5, $6}' file

i、 e.匹配正则表达式作为条件,然后在
{…}
块中打印所选列。

谢谢,但它似乎忽略了正则表达式,只打印列<代码>5861511 0740910000 318313407343789225861511 0740910000 318313430
5861511 0740910000 318313439
啊,谢谢。)我希望它打印列,如果它以07开头。