2017-04-03 9 views
0

誰でもこの問題を解決するのに役立ちますか?sedを使用してパターン行を削除する

同じ行に開始と終了のパターンがある場合。 上記ラインの実行後に、このようにする必要がありPATTERN

joey people PATTERN we just had 
PATTERN a lot of fun PATTERN 
at my wedding 
We will PATTERN 
have more 
PATTERN fun tomorrow PATTERN 
all are welcome. 

を含む行を削除します。

joey people PATTERN we just had 
at my wedding 
We will PATTERN 
have more 
all are welcome 
+0

何を試しましたか?どのように失敗したのですか? – choroba

+0

'grep -v 'PATTERN。* PATTERN''これは何か? –

+0

私は\ sed '/ /{n;//d}のパターンを試しました – Rio

答えて

0

単純SEDアプローチ:

sed '/^PATTERN\(.*PATTERN\)*$/d' file 

^$ - アンカー、文字列の開始と終了ポイントは、それぞれ

^PATTERN\(.*PATTERN\)*$ - 始まるすべての行に一致しますおよび終了(オプションのキャプチャグループ\(.*PATTERN\)*によって提供)は、PATTERNまたはcont単一ワード


grepのツール使用する代替としてAINS PATTERN

grep -v '^PATTERN\(.*PATTERN\)*$' file 

-v--invert-match)オプションを、非マッチング線を選択するために、マッチングの意味を反転。

+0

'PATTERN'だけを含む行は何ですか? – choroba

+0

@チョロバ、良い点、固定 – RomanPerekhrest

+0

ありがとう、それは動作します。 – Rio

関連する問題