bash - 估计文件中的行数并将该值作为第一行插入
问题描述
我有许多文件,我必须估计每个文件中的行数并将该值添加为第一行。为了估计,我使用了这样的东西:
wc -l 000600.txt | awk '{ print $1 }'
但是,如何为所有文件执行此操作然后将与每个文件对应的值添加为第一行没有成功。
一个例子:a.txt b.txt c.txt
>>print a
15
>> print b
22
>>print c
56
那么15、22、56应该分别添加到:a.txt b.txt和c.txt
我很感激帮助。
解决方案
您可以在文件的第一行添加一个模式,例如 (LINENUM),然后使用以下脚本。
wc -l a.txt | awk 'BEGIN {FS =" ";} { print $1;}' | xargs -I {} sed -i 's/LINENUM/LINENUM:{}/' a.txt
或仅使用此脚本:
wc -l a.txt | awk 'BEGIN {FS =" ";} { print $1;}' | xargs -I {} sed -i '1s/^/LINENUM:{}\n/' a.txt
推荐阅读
- class - 使用附加构造函数和方法将 C# 类转换为 F# 类的语法
- laravel - 从错误对象中提取文本(通过响应)并在 vue 模板中操作或显示它
- rust - 无法在 for 循环内使用链方法
- ajax - 页面刷新调用动作监听函数
- nginx - 如何解决 Kubernetes NGINX Ingress 中的错误 503
- visual-studio-code - Visual Studio Code 如何让我感到震惊
- c++ - 约束模板函数参数类型
- django - django celery beat 周期性任务管理页面加载错误
- flutter - 颤振,在应用主题级别更改应用栏领先图标的正确方法是什么?
- database - 使用 jdbc 将 H2 与 symmetricDS 连接时出错