データの最初の数行とデータが終了するまで特定の一致数を削除する方法

データの最初の数行とデータが終了するまで特定の一致数を削除する方法
51 0 0 5  
0 0.0 0.0 0  
1 2 3 4 5 6 7 8  
1, 2  
0.998 0.567  
3, 2 Rs12345  
0.7 0.2  
3, 2 Rs31256  
0.56 0.311  
3, 2 Rs25691  
0 0  
012.1313010310 0.1213212 0.2121331321
0.0121654564 0.254564564 0.25678646 
0.02154 0.2485674354 0.2434  

結果の出力は次のとおりです。

3, 2 Rs12345    
0.7 0.2  
3, 2 Rs31256  
0.56 0.311  
3, 2 Rs25691

sedを使って期待した結果を得ました。

sed -i -e '1,5d;/0 0/,$d' filename

これはうまくいきません。私はこのように行の長さが異なる複数のファイルで作業しています。だから何とか「0 0」とそれ以降のすべての行(データの終わり)を削除する必要があります。

ベストアンサー1

あなたの言葉はほぼ正しいです...

sed -e '1,5d;/^0 0/,$d' genetics 
3, 2 Rs12345  
0.7 0.2  
3, 2 Rs31256  
0.56 0.311  
3, 2 Rs25691

それがあなたが望むものなら、-iを追加します。

おすすめ記事