微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > 微电子学习交流 > 问个文本处理...

问个文本处理...

时间:12-12 整理:3721RD 点击:
1 @138   SH: first_mb_in_slice                                         1 (  0)
  2 @116257SH: first_mb_in_slice                             0000001111001 (120)
  3 @237791SH: first_mb_in_slice                           000000011110001 (240)
  4 @358847SH: first_mb_in_slice                           00000000101101001 (360)
  5 @479158SH: first_mb_in_slice                           00000000111100001 (480)
  6 @594228SH: first_mb_in_slice                           0000000001001011001 (600)
一个文件cat后得到这样的流,如何同样在命令行里面提取出@和SH直接的数字,然后>到一个文本文件?
哎,我的正则表达式的实在是让人做鸡啊...

awk 'BEGIN {FS = "@|SH"}  {print $2}' > file

文件内容是grep得到的吧
下回记得grep的时候加上 -l 也许会有帮助

好强 问下
      8768.319315930  (0, 0)
      8768.319315930  (0, 0)
      8768.319315930  (0, 0)
      8798.319315930  (0, 0)
      8798.319315930  (0, 0)
文本里面都是这样的行  要找出相邻两行第一列之差大于等于30  awk怎么写
比如上面的3 4 两行就符合要求

awk 'BEGIN {n1=0;n2=0} {n1=$1;if (((n1-n2) >= 30) && (FNR > 1))  print;n2=n1}'

超过10行的东西我就用python处理。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top