我被困住了。假设我有 4 列的制表符分隔文件。
A326931873 2014-10-26 09:55:28.000 N06 D00030131051410
A326931902 2014-10-26 09:56:10.000 N06
并想用 \N 替换行尾的空字段。结果应该是
A326931873 2014-10-26 09:55:28.000 N06 D00030131051410
A326931902 2014-10-26 09:56:10.000 N06 \N
我试过了awk -F'\t' 'BEGIN {sub("", "\N", $4); print}' file
,awk -F'\t' 'BEGIN {sub(/^&/, "\N", $4); print}' file
同样没有运气。
更新1:正如建议的那样,我也尝试过使用字段数,但awk -F"\t" 'NF<4 {print}' file
没有返回任何结果,即所有行都有四个字段。
更新2:cat -vET file
显示
A326931873^I2014-10-26 09:55:28.000^IN06^ID00030131051410^M$
A326931902^I2014-10-26 09:56:10.000^IN06^I^M$
更新3:删除回车后cat -vET file
显示
A326931873^I2014-10-26 09:55:28.000^IN06^ID00030131051410$
A326931902^I2014-10-26 09:56:10.000^IN06^I$
并且任何建议的解决方案都不起作用。