0

これは簡単なはずですが、正しく理解できないようです。次のデータがあります。

 4131942         Door Assy, LH Ref 249R/RP
 15              #7002668 - Rev. A - June, 2006
 1.             6110010 Bolt, #10-24 x 1/2” Flat Head

真ん中の行を削除したい。

これは、私が使用しているステートメントの最新の反復です。

 sed -i '/(^[(0-9)][(0-9)](.*)[#][(0-9)][(0-9)][(0-9)][(0-9)][(0-9)][(0-9)][(0-9)](.*))/d' 

複数のバリエーションと異なる正規表現を使用しましたが、役に立ちませんでした。

ここで何が欠けていますか?

4

1 に答える 1

1

sed -r正規表現は問題ありませんが、拡張正規表現を有効にするために使用する必要があります。

試す:

sed -ri '/(^[(0-9)][(0-9)](.*)[#][(0-9)][(0-9)][(0-9)][(0-9)][(0-9)][(0-9)][(0-9)](.*))/d'  file

または、次のように単純化します。

sed -ri  '/^[0-9]{2}.*#[0-9]{7}.*/d' file
于 2013-09-20T16:18:44.740 に答える