1
sedが一致しない行を省略する方法は?
次の例でsedは、aまたはで始まる行に一致し、cその行の最初の文字(aまたはc)を出力します。 $ echo "ag bh ci dj ek fl" | sed 's/\(a\|c\)./\1/' # Matches lines starting with 'a' or 'c'. output: a bh c dj ek fl ただし、パターンと一致しない行も印刷されます。sedパターンに一致しない行を除外するにはどうすればよいですか?grep(以下のように)と組み合わせることで目的の効果を得るsedことができますが、「それだけ」で実現できるか知りたいです。 $ echo "ag bh ci dj ek fl" | grep '[ac]' | sed 's/\(a\|c\)./\1/' output: a c