2015-03-25 37 views
0

有没有简单的方法来找到第一列中的值的总和?从命令行输出的数学

My command line

如果是这样,将这种方法是从不同的总和在文本文件中的列?所以第一个是命令行输出的数学,第二个是没有打开它们的文本文件。

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

+2

'wc'的最后一行输出已经包含'total'。所以'wc什么| tail -n 1'平凡解决了陈述的问题。 – tripleee 2015-03-25 10:38:17

回答

0

您可以使用awk对标准输入或文件执行操作。找到的wc输出,第一列的总和由结果输送至AWK:

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

找到在一个文件中的第一列的总和,通过直接读取该文件:

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

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

+0

太好了,谢谢。根据这些列对文件排序怎么样 – Doug 2015-03-25 08:39:10

+0

@Doug这是一个完全独立的问题,这已经在别处得到解答,例如, http://stackoverflow.com/q/4262650/2088135 – 2015-03-25 08:42:56

+0

@TomFenech列的总和也在别处解答,例如[here](http://stackoverflow.com/questions/29240782/print-sum-of-each-column -with-AWK),[这里](http://stackoverflow.com/questions/28905083/how-to-sum-a-column-in-awk),[这里](http://stackoverflow.com/questions/28445020 /求和值的列使用awk命令)等 – 2015-03-25 09:27:29