所以我有一个如下的laaaaaarge文件:
Item|Cost1|Cost2
Pizza|50|25
Sugar|100|100
Spices|100|200
Pizza|100|25
Sugar|200|100
Pizza|50|100
我想为一个特定的项添加所有的Cost1
和Cost2
,并生成一个合并的输出。在
我已经编写了一个python代码来实现这一点
^{pr2}$有没有什么办法可以在awk中或者使用其他的魔法来快速高效地完成这个任务呢?在
或者我可以让我的python变得更优雅更快?在
预期输出
Pizza|200|150
Sugar|300|200
Spices|100|200
像这样。。。在
说明
BEGIN{OFS=FS="|"}
将(输入和输出)字段分隔符设置为|
。在NR>1
意味着我们要对大于1的行号执行一些操作。这样我们就跳过标题了。在cost1
和cost2
是索引是第一个字段,其值是到该点的和的数组。在END {}
是我们在阅读整个文件后所做的事情。它包括在数组中循环并打印值。在实际上,我会做fedorqui所做的事情。但是,为了完整起见,此
python
脚本应该比原始脚本快:将脚本保存到一个文件中,如
^{pr2}$sumcols
,并使其可执行chmod +x sumcols
,运行方式如下:如果你认为合适的话,可以随意压缩成1到2行。在
相关问题 更多 >
编程相关推荐