带有
制表符分隔符的.txt文件有 4 列,其中有许多行号,每列的形式都是:
12345 a xxx yyy
12345 b xxx yyy
67890 c xxx yyy
12345 d xxx zzz
67890 e xxx zzz
12345 f xxx zzz
23456 g xxx zzz
如何计算.txt文件中整个第一列中每个唯一整数的实例,并通过将第五列追加到.txt文件中将计数添加为每行中的第五个值。
12345 a xxx yyy 1
12345 b xxx yyy 2
67890 c xxx yyy 1
12345 d xxx zzz 3
67890 e xxx zzz 2
12345 f xxx zzz 4
23456 g xxx zzz 1
我更喜欢仅使用 UNIX 命令行流处理程序的解决方案。任何帮助都非常感谢。提前谢谢。
使用awk
的一种方法:
awk '
BEGIN { OFS = "t"; }
{
key[ $1 ]++;
print $0, key[ $1 ];
}
' infile
输出:
12345 a xxx yyy 1
12345 b xxx yyy 2
67890 c xxx yyy 1
12345 d xxx zzz 3
67890 e xxx zzz 2
12345 f xxx zzz 4
23456 g xxx zzz 1