【发布时间】:2013-04-25 21:29:42
【问题描述】:
我使用一个有 2 个字段的常规文件,第一个是帐户名称(带有空格),第二个是一个整数,两个字段用 \t 分隔,所有记录都用 \n 分隔。我的问题是我需要删除与第一个字段字符串匹配的记录。我的代码如下:
awk -v APENOM="$apeynom" -F "\t" ' $1 != APENOM { print $0; } ' $1 > $TEMP_FILE_2
它适用于大多数记录,但不适用于第一条记录,它永远不会匹配第一条记录中的第一个字段?
【问题讨论】:
-
您应该发布输入文件(或至少一个示例) 以及
$apeynom的值,并显示您当前获得的输出和您期望的输出。 -
您的输入文件是在 Windows 上创建的,因此在行尾有虚假的 control-M。运行
cat -v file以查看它们,然后在其上运行dos2unix并重试。 -
确实是记事本,当我看到那个特殊的字符时,我意识到。感谢您的回复。