【发布时间】:2015-02-09 11:40:56
【问题描述】:
我有这样的数据
#start
#gatherData
*ELEMENT_SHELL
48709 1 50614 50616 50618 50613
48710 1 50613 50618 50608 50609
48711 1 50616 50617 50619 50618
48712 1 50618 50619 50607 50608
48715 1 50589 50590 50620 50615
48716 1 50615 50620 50616 50614
48717 1 50590 50591 50621 50620
48721 1 50623 50625 50626 50622
48722 1 50622 50626 50610 50611
48723 1 50625 50614 50613 50626
*END
$PresentData
$RESULT OF strength
48709 1.0267261e-002
48710 1.0721873e-002
48711 1.1930415e-002
48712 1.2186395e-002
48715 9.7443219e-003
48716 1.0036242e-002
48717 1.1186538e-002
48721 7.9333931e-003
48722 8.6850608e-003
48723 8.9872172e-003
我要做的是首先检查下的所有结果 $力量的结果
第二列中的哪些数字介于 0 和 1e-002 之间,然后基于该搜索在 *ELEMENT_SHELL 和 *END 之间的数字并将完整的行发送到新的文本文件 test1.txt。如果数字在 1e-002 到 1e-003 之间,则到下一个文本文件 test2.txt 并将这个单个文件分成两个不同的文件。 Text1.text 会有
48709 1 50614 50616 50618 50613
48710 1 50613 50618 50608 50609
48711 1 50616 50617 50619 50618
48712 1 50618 50619 50607 50608
48716 1 50615 50620 50616 50614
48717 1 50590 50591 50621 50620
Text2.txt 会有
48721 1 50623 50625 50626 50622
48722 1 50622 50626 50610 50611
48723 1 50625 50614 50613 50626
48715 1 50589 50590 50620 50615
任何专家可以建议使用 SED 或 AWk 的方式吗?我认为最终结果可以很容易地通过管道传输,但是从同一个文件中分离并再次找到它是有问题的。提前致谢
【问题讨论】: