前端之家收集整理的这篇文章主要介绍了
bash – 如何删除文本文件中的第X行?,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
考虑具有科学数据的文本
文件,例如:
5.787037037037037063e-02 2.048402977658663748e-01
1.157407407407407413e-01 4.021264347118673754e-01
1.736111111111111049e-01 5.782032163406526371e-01
如何轻松删除,例如,每隔二行,或文件中每10行中的每9行?是否可以用bash脚本?
背景:文件非常大,但我需要更少的数据来绘制。注意我正在使用Ubuntu / Linux。
这很容易用awk完成。
删除每隔一行:
awk 'NR % 2 == 0' file > newfile
每隔10行删除一次:
awk 'NR % 10 != 0' file > newfile
awk中的NR变量是行号。 awk中{}之外的任何内容都是有条件的,默认操作是打印。
原文链接:https://www.f2er.com/bash/388131.html