【发布时间】:2019-12-08 00:03:45
【问题描述】:
我有一个 csv 分号分隔,我想对某些字段进行排序,而不需要标题保持标题不变。 如果我使用冒号作为字段分隔符没有问题,但不知道如何使用分号作为字段分隔符。
文件 temp2:
a,b,c,d,e
1,2,3,4,5
3,1,2,3,1
2,3,1,2,3
>cat temp2 | awk 'NR==1; NR > 1 {print $0 | "sort -t, -k2"}'
结果 ok 排序字段 2:
a,b,c,d,e
3,1,2,3,1
1,2,3,4,5
2,3,1,2,3
下一次尝试,做同样的事情,但分号字段分隔符:
文件 temp1
a;b;c;d;e
1;2;3;4;5
3;1;2;3;1
2;3;1;2;3
>cat temp1 | awk 'NR==1; NR > 1 {print $0 | "sort -t=";" -k2"}'
使文件保持原样:
a;b;c;d;e
1;2;3;4;5
2;3;1;2;3
3;1;2;3;1
预期的结果:
a;b;c;d;e
3;1;2;3;1
1;2;3;4;5
2;3;1;2;3
【问题讨论】: