【问题标题】:Mathematics on output from command line [duplicate]命令行输出的数学[重复]
【发布时间】:2015-03-25 08:25:00
【问题描述】:

有没有一种简单的方法可以找到第一列中值的总和?

如果是这样,这种方法与对文本文件中的列求和会有所不同吗?所以第一个是命令行输出的数学运算,第二个是不打开它们的文本文件。

有些东西告诉我我可能需要 awk。

【问题讨论】:

  • wc 的最后一行输出已经包含total。所以wc whatever | tail -n 1 微不足道地解决了上述问题。

标签: linux awk


【解决方案1】:

您可以使用 awk 对标准输入或文件执行操作。要在wc 的输出中查找第一列的总和,请将结果通过管道传输到 awk:

wc *.txt | awk '{sum+=$1}END{print sum}'

通过直接读取文件来查找文件中第一列的总和:

awk '{sum+=$1}END{print sum}' file

awk 代码很简单 - 对于每一行输入,添加第一个字段的值,即变量 sum。读取所有输入后,打印sum 的值。

【讨论】:

  • 太好了,谢谢。那么根据这些列对文件进行排序呢
  • @Doug 这是一个完全独立的问题,已经在其他地方回答过,例如stackoverflow.com/q/4262650/2088135
  • @TomFenech 列的总和也在其他地方得到回答,例如 here,here,here,etc
  • @JID 你说得对,我已经投票决定以重复身份关闭。
猜你喜欢
  • 2018-11-04
  • 1970-01-01
  • 1970-01-01
  • 2014-03-29
  • 1970-01-01
  • 2018-06-24
  • 2018-07-05
  • 2021-04-24
  • 2014-10-26
相关资源
最近更新 更多