shell - 对多个文件中的数字求和
问题描述
我有大约 200 个文件,只有一列数字。
如何添加数字并替换到位?
File 1
2
5
8
1
File 2
1
2
3
5
awk inplace
由于较旧的 GNU 版本,我似乎无法使用。
是否有任何其他选项可以inplace
替换多个文件?
如果你能帮我正确的命令?
我的文件在一个目录中./Directory/*.csv
解决方案
这是在底部添加总和,缺点是您只能运行一次:
find -name '*' | xargs -I % bash -c "awk 'BEGIN{x=0} {x+=$ 1} END{print x}' % >> %"
(不要删除任何>
符号,它会放一个零而不是内容)
为了完全替换文件内容,我们需要将其保存在某个地方,然后将其放入文件中,否则文件内容将被完全删除。
推荐阅读
- npm - Should I duplicate "peerDependencies" in "dependencies" field of "package.json"?
- docker - 从 traefik 到 Vultr 的 DNS 挑战
- javascript - 两个按钮中的一个启动滚动,但它们都应该
- c - 如何在 C 运行时获取哪些有问题的源代码和行?
- oracle - 在Oracle中查找某个时期内帐户总和之间的差异
- linux - ubuntu 中的 systemd 文件未按预期运行
- stata - Stata中看似无关的回归后的利润率太慢
- css - JavaFX TabPane:如何制作梯形标签
- javascript - Firebase Firestore - 如何查询两个匹配的“WHERE”子句中的任何一个
- python - 带有循环的 Python 列表 remove() 无法按预期工作