2012-05-03 8 views
1

私はAIXを使用していますが、「パイプに書き込まれたデータを読み取るプロセスはありません」という文字列があります。私はこの文字列の前に2行、4行後に出力を得たいと思っています。 、この文字列とログの最後の結果文字列がログに100回以上のような存在であり、私は出力したいaix:文字列の前後の行を取得する

私が使用してみました:

nawk 'c-->0;$0~s{if(b)for(c=b+1;c>1;c--)print r[(NR-c+1)%b];print;c=a}b{r[NR%b]=$0}' b=2 a=4 s="There is no process to read data written to a pipe" File.log 

このコマンドの出力はということです私は、あなたが利用できるのGNU grepのを持っている場合は、代わりのawkのそれを使用することができます上記の文字列が

存在するすべての100のプラスの結果が-A番号-B numberコマンドは、AIX

答えて

0

に動作していない取得しています:

grep -B 2 -A 4 "There is no process to read data written to a pipe" File.log 
+0

GNU grepは利用できません – user1292831

+0

答えのためのThx:|テール番号 – user1292831