【发布时间】:2018-10-04 14:10:05
【问题描述】:
在一些 unix 的东西上遇到了超级麻烦。这里的任何指导都将不胜感激。
我想根据下面文件中的 id 识别重复记录,并在单独的 col 中为其分配一个唯一的随机数,并将它们的 value 字段相加。 我的输入文件:
name,location,id,state,website,status,color,field1,value,field3,field4,field5
joe,US,23A,CA,g,oog,le,10,blue,0,10,0,0,0
jack,UK,89A,LN,yah,oo,11,red,0,20,0,0,0
joe,US,23A,CA,g,mail,10,blue,0,120,0,0,0
rose,EU,AV45,UN,new,mail,45,black,0,110,0,0,0
Karl,US,2345,NY,microsoft,99,green,0,34,0,0,0
jonas,IN,AW3455,ND,facebook,37,brown,0,48,0,0,0
Karl,US,2345,NY,microsoft,99,purple,0,87,0,0,0
alin,IN,3T45,CA,re,edit,78,white,0,22,0,0,0
alin,IN,3T45,CA,ora,cle,11,orange,0,35,0,0,0
我希望我的输出文件是:
RandonUniqID,ID,Value
2202,23A,130
3029,89A,20
3066,AV45,110
5077,2345,121
1055,AW3455,48
3099,3T45,57
在这里,我想为rec 和那些重复的记录生成唯一的随机ID,我想将它们的值字段汇总在一个单独的字段中。这里最棘手的部分是我的第 5 列 网站 非常动态。该字段中的值将在任何地方放置逗号分隔符。所以这给我带来了麻烦。
【问题讨论】:
-
要从
value列获取数据而不必担心website中的嵌入逗号,请使用$(NF - 3) -
知道了。但我不确定如何为我的记录生成一个随机数并为此添加值。我尝试了几个 awk 的东西,但是 value 字段中不同的逗号使它全部倾斜
-
Edit 你的问题展示你的尝试。在值字段中使用不同的逗号是什么意思?值字段不是十进制数吗?
-
不,先生。不在值字段中。我指的是网站领域。很抱歉造成混乱
-
您还没有添加代码。如果您将迄今为止的工作包括在内,您将获得更多有用的答案。