我有一个包含页眉和页脚的文件,并且数据经过多次迭代(带有页眉和页脚),我想定界数据,并且不希望页眉页脚。我的目的是为了进行数据分析以进行性能分析,只是分析工作并不顺利。

文件中的数据:

   09:31:56 12/13/11 r/w I/O per second KBytes per sec  Svt ms     IOSz KB
              VVname      Cur  Avg  Max  Cur  Avg  Max Cur Avg   Cur   Avg Qlen
               admin   r    0    0    0    0    0    0 0.0 0.0   0.0   0.0    -
               admin   w   17   17   17   68   68   68 0.2 0.2   4.1   4.1    -
               admin   t   17   17   17   68   68   68 0.2 0.2   4.1   4.1    0
 z0001_app0136_s.254   r    0    0    0    0    0    0 0.0 0.0   0.0   0.0    -
 z0001_app0136_s.254   w    0    0    0    0    0    0 0.0 0.0   0.0   0.0    -
 z0001_app0136_s.254   t    0    0    0    0    0    0 0.0 0.0   0.0   0.0    0
....................
....................

-----------------------------------------------------------------------------------
  Footer            394   r   87   87      4354 4354      2.7 2.7  49.9  49.9    -
  Footer            394   w  126  126       906  906      0.1 0.1   7.2   7.2    -
  Footer            394   t  213  213      5260 5260      1.2 1.2  24.7  24.7    0
   09:32:57 12/13/11 r/w I/O per second KBytes per sec    Svt ms     IOSz KB
              VVname      Cur  Avg  Max  Cur  Avg  Max  Cur  Avg   Cur   Avg Qlen
               admin   r    0    0    0    0    0    0  0.0  0.0   0.0   0.0    -
               admin   w   32   24   32  130   99  130  0.2  0.2   4.1   4.1    -
               admin   t   32   24   32  130   99  130  0.2  0.2   4.1   4.1    0
 z0001_app0136_s.254   r    0    0    0    0    0    0  0.0  0.0   0.0   0.0    -
 z0001_app0136_s.254   w    0    0    0    0    0    0  0.0  0.0   0.0   0.0    -


文件中的数据又一次又一次地遍历。

最佳答案

清除此类数据的常用方法是使用grep,以选择所需的数据或排除不需要的数据。在这种情况下,看起来所有所需的行都有一个字母(r,t或w),每边都有一个空格,而所有不需要的行都没有。 (编辑:页脚行稍后添加到问题中,因此添加了grep -v命令以排除页脚。)

如果数据在文件d中,您将说:

grep ' [rtw] ' d | grep -v Footer


然后选择数据行,但不选择页眉,页脚或空白行。要使用数据创建名为t的文件,请说:

grep ' [rtw] ' d | grep -v Footer > t


如果实际数据(相对于出现的问题)使用制表符或空格而不是空格,请使用'[[:space:]][rtw][[:space:]]'作为搜索字符串,而不是' [rtw] '。另外,当不使用-i时,grep区分大小写。如果排除的术语同时出现(有时是大写,有时是小写),则对grep选项使用-iv而不是-v

grep '[[:space:]][rtw][[:space:]]' d  | grep -iv footer > t

关于linux - 想要从具有页眉页脚的文件中分隔数据,以便数据整理以进行性能分析,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12523967/

10-12 14:14
查看更多