在 bash shell 中,我试图编写一个简短的单行代码来将一个文件的行数除以另一个文件的行数。我想显示浮点除法的至少两位小数。
换句话说,我想要一个单行打印一个文件的行数占另一个文件行数的百分比。
例如,如果我有一个 25 行的第一个文件 (first.txt) 和一个 100 行的第二个文件 (second.txt),单行代码将输出 .25
。
最佳答案
首先是一些测试 Material :
$ for i in {1..25} ; do echo $i >> first ; done
$ for i in {1..100} ; do echo $i >> second ; done
然后一些awk:
$ awk 'END{print(NR-FNR)/FNR}' first second
0.25
NR
是两个文件中记录的总数。在END
处,FNR
是后一个文件的记录数,所以(NR-FNR)/FNR
是第一个文件的记录数文件除以秒的记录数。
除了此处提供的解决方案外,您还需要将问题提交至the code golf course。 .
关于bash - 在 bash 中将一个文件的行数除以另一个文件的最短行数是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46435762/