AWK,字段匹配时删除记录

时间:2013-04-25 13:24:45

标签: bash awk

我使用的常规文件有2个字段,第1个是帐户名(带空格),第2个是整数,两个字段用\t分隔,所有记录用\n分隔。我的问题是我需要删除与第一个字段字符串匹配的记录。我的代码如下:

awk -v APENOM="$apeynom" -F "\t" ' $1 != APENOM { print $0; } ' $1 > $TEMP_FILE_2

它适用于大多数记录但不适用于第一条记录,它永远不会匹配第一条记录中的第一个字段吗?

1 个答案:

答案 0 :(得分:0)

尝试将脚本更改为:

'$1 != APENOM { print $0; next } { print "MISMATCH[", $1, "]" }'

我觉得你有肮脏的输入。在分隔标签字符之前可能有一个空格。这样可以打印出跳过时$1的内容。