$ echo -e 'CH12\nCH23au' | sed '/^CH/s=^=<b>='
<b>CH12
<b>CH23au
CH
byで始まる行を一致させることができることを知っていますが、複数のパターンをどのように一致^CH
させることができますか?
例:
入力する:
CH12
CH23au
出力:
CH12
<b>CH23au
<b>
特定の場所^CH
と行にのみ配置する方法はau
?
ベストアンサー1
合計の順序は固定されているため、その行CH
の先頭に表示する必要がある場合は見つかります。CH
au
^CH.*au
$ echo -e 'CH12\nCH23au' | sed '/^CH.*au/s=^=<b>='
CH12
<b>CH23au
$
両方のモードの順序が固定されていない場合は、次のようにできます。
sed -e '/pattern1/{;/pattern2/s/old/new/;}'
しかし、Perlソリューションは
perl -pe 'if (/pattern1/ && /pattern2/) {s/old/new/;}'
読みやすくすることもできます。