2

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

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

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

4

1 回答 1

0

尝试将脚本更改为:

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

我有一种感觉,你有肮脏的输入。在分隔制表符或其他东西之前可能有一个空格。这将让它打印出$1你跳过的内容。

于 2013-04-25T13:29:42.913 回答