簡體   English   中英

Perl Oneliner正則表達式

[英]Perl Oneliner Regex

我需要將結果從文件記錄到屏幕上。

貓logfile.txt

=====================Installing Oracle========================
*** ERROR[Install023] Oracle is already installed in $VOL1.
Alert: There might be an issue, Please check!
=============================================
=====================File Set verification========================
Filesystem    State    512-blocks       Used       Avail  Capacity  Mounted on
HOME          STARTED   143372688   119516872    23855816   83%    /home
BIN       STOPPED        -           -           -        -    /nfsT/nfsdata/common
ROOT          STARTED   143372688   119516872    23855816   83%    /
TEMP          STARTED   143372688   118402344    24970344   83%    /tmp
The Filset for home directory looks Ok.
The Filset for root directory looks Ok.
=============================================

我在做:

perl -0777 -nle  'print $2 "\n" while m/^(={21})([\w\s]+)(+={24})/gm' logfile.txt

但這沒有任何結果。

輸出需要。

Installing Oracle..... Alert
File Set verification.....Ok!

尚不清楚發出警報的所有可能原因是什么,但是以下示例適用於您的示例:

perl -ne 'undef $err, print "$1 ..." if /^={21}([^=]+)={24}/;
          $err = 1 if /ERROR/;
          print $err ? "Alert" : "Ok!", "\n" if /={45}/'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM