1

我正在处理一个大文件,我想使用 Linux 命令行有效地从中删除多行。每行都以数字开头,我想删除以 x 和 y 之间的数字开头的行,例如,我想删除行中第一个条目 >=1 和 <=65 的行。

任何帮助,将不胜感激!

样本输入

62 14 54.3846 97.2284 76.2852 0.00586727 0.00448625 0.00738023   
63 11 54.14 95.816 74.8085 -0.00117792 0.0101263 -0.018456   
64 11 55.0529 95.2962 76.2127 0.00370189 -0.0266417 -0.0103687   
65 12 54.7587 97.8565 75.6593 -0.0188772 0.0199475 -0.014265   
66 6 48.6904 55.7418 84.002 -0.00401507 -0.00262484 -0.00272206   
67 1 49.3229 54.445 84.2829 0.00102564 0.00328434 0.00452383   

期望的输出

66 6 48.6904 55.7418 84.002 -0.00401507 -0.00262484 -0.00272206   
67 1 49.3229 54.445 84.2829 0.00102564 0.00328434 0.00452383   
4

1 回答 1

2

使用 awk:

awk '$1 < 1 || $1 > 65' file

输出:

66 6 48.6904 55.7418 84.002 -0.00401507 -0.00262484 -0.00272206   
67 1 49.3229 54.445 84.2829 0.00102564 0.00328434 0.00452383
于 2018-05-01T13:48:10.383 回答