証明書のみを含むファイルがあり、それを2番目のファイルに移動してファイルの1行を上書きしたいと思います。
証明書の形式は次のとおりです。
-----BEGIN CERTIFICATE-----
abc
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
xyz
-----END CERTIFICATE-----
2番目のファイルはyamlファイルで、Value4を証明書で上書きしたいと思います。
Value1
Value2
Value3
Value4
出力は次のとおりです
Value1
Value2
Value3
-----BEGIN CERTIFICATE-----
abc
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
xyz
-----END CERTIFICATE-----
これを行う方法についてのアイデアはありますか?理想的には、2番目のファイルは後で証明書の下に新しいフィールドを追加できるため、行番号を使用したくありません。
ベストアンサー1
perl -ne '
print /value4/ ? <STDIN> : $_;
' yaml < cert
Line value4は標準入力全体を印刷し、そうでなければ通常入力が使用されます。