我想用awk来读取一个csv文件.csv文件包含5列,c1,c2,c3,c4,c5.我想判断c1,c2和c3是唯一的,就像数据库约束一样.
这是示例csv文件:
c1,c2,c3,c4,c5
1886,5141,11-2011,62242.57,52.71
1886,5140,11-2011,63763.75,52.22
23157666,4747,11-2011,71.07,83.33
1886,5141,11-2011,4645.45,2135.45
Run Code Online (Sandbox Code Playgroud)
在这种情况下,row1和row4违反唯一约束,并提示错误消息.
如何用awk实现它?非常感谢提前.
awk -F, 'line[$1,$2,$3] {printf "Error: lines %d and %d collide\n", line[$1,$2,$3], NR; next} {line[$1,$2,$3] = NR}'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
617 次 |
| 最近记录: |