nic*_*ten 4 bash shell scripting awk zsh
假设我有一堆XML文件,其中不包含换行符,但基本上包含一长串记录,由以下分隔 </record><record>
如果分隔符是,</record>\n<record>我将能够做一些像cat *.xml | grep xyz | wc -l计算感兴趣的记录实例的事情,因为cat会每行发出一个记录.
有没有办法在SOMETHING *.xml | grep xyz | wc -l哪里写SOMETHING每行可以流出一个记录?我尝试使用awk此功能但无法找到避免将整个文件流式传输到内存的方法.
希望问题很清楚:)
这有点难看,但它有效:
sed 's|</record>|</record>\
|g' *.xml | grep xyz | wc -l
Run Code Online (Sandbox Code Playgroud)
(是的,我知道我可以把它缩短一点,但只是以清晰为代价.)
| 归档时间: |
|
| 查看次数: |
2742 次 |
| 最近记录: |