[sed] 置換が発生した行だけを出力する
作成日: 2026年09月21日
sed で置換できた行だけを出力するには、-n オプションと置換コマンドの p フラグを使用します。
printf 'apple\nbanana\napple pie\n' | sed -n 's/apple/orange/p'
実行結果は下記のとおりです。
orange
orange pie
-n は通常の自動出力を抑止します。置換コマンドの末尾に p を付けると、置換が成功した行だけが出力されます。
そのため、apple を含まない banana の行は表示されません。