sed 追加コマンドをリンクするには?

sed 追加コマンドをリンクするには?

SEDコマンドを使用して構成ファイルに変更を適用したいと思います。この場合、開始タグの後ろの複数の場所にいくつかの行を挿入する必要があります。

しかし、私が試したとき:

sed '/\[httpd/\]/a secure_rewrites = false; /\[couchdb/\]/adelayed_commits = false' local.ini

[httpd]の後に次の行が追加されたことがわかりました。

secure_rewrites = false [couchdb]/adelayed_commits=false

これは明らかに私が望むものではありません。

追加のコマンドをリンクできますか?

ベストアンサー1

GNUによるsed a textサブコマンドは追加するテキストを操作します。このテキストは行末まで読み込まれます。次のトリックを適用して改行を模倣することができます。

sed '/\[httpd\]/a secure_rewrites = false;
/\[couchdb\]/adelayed_commits = false' local.ini

出力例:

...
[httpd]
secure_rewrites = false;
...
[couchdb]
delayed_commits = false

おすすめ記事