【问题标题】:Compare Two Files Using awk Script使用 awk 脚本比较两个文件
【发布时间】:2015-03-12 14:12:27
【问题描述】:

我需要使用条件验证两个文件,文件中的每条记录用逗号分隔。

文件1

Prakash,10,20,3(Field Index)

文件2

10,25,100
20,25,200
30,20,300

从读取文件1的FieldIndex我需要对文件2中的对应列求和(即100+200+300)需要添加。

【问题讨论】:

  • 你尝试了什么?你怎么知道它是第三个字段还是最后一个字段或......?另外,请注意,最好向回答您的问题的人提供反馈。到目前为止,您已经询问了一些并且没有接受任何内容,也没有正确格式化。尝试阅读How do I ask a good question
  • 请澄清您的问题。您谈论的是 100+200+300,但鉴于第一个文件中的条目,您如何获得这些数字并不清楚。该文件是否包含 (Field Index) 字样,或者是评论?您是否要在第二个文件的列中添加由第一个文件的最后一列中的列号标识的数字?所以如果最后一列是 2,你会加 25+25+20?

标签: awk


【解决方案1】:
$ cat > file1
Prakash,10,20,3
$ awk -F, '
  NR == FNR {f = $NF; next}  # last field of the first file
  { sum += $f }              # we're in the 2nd file here since NR != FNR
  END { print "sum of field index " f " is " sum }
' file1 file2 
sum of field index 3 is 600

【讨论】:

  • 纯代码答案会自动标记为低质量,因此不鼓励在 stackoverflow 上使用。将来请用细节修饰您的答案,并解释为什么它是问题的解决方案。这有助于其他用户。
猜你喜欢
  • 2017-01-31
  • 2018-03-04
  • 2011-05-09
  • 2017-07-25
  • 2014-10-12
  • 2012-01-01
  • 2012-09-05
  • 2015-02-22
相关资源
最近更新 更多