ワンライナーで設定ファイルの一部をコメントアウトする


こんな設定ファイルがあって対象の行だけワンライナーでコメントアウトしたい

nginx.conf

location hogehoge {
 なんかの設定
}

これでいけた

sed -i '' -e '/hogehoge/,/}/ s/^/ # /g' ./nginx.conf
  • hogehogeで始まって}で終わる行の先頭(正規表現で^)に#をつけるワンライナー

  • macだと-i ''オプションがないとうまくいかない。LinuxであればなくてもOK

(冪等性はともかく)これをAnsibleにshellモジュールで実行させてサーバ設定したりとかできます