開発

Macで「sed」ではなく「gsed」を使用しよう

シェルスクリプトでファイル内の文字を置換する場合には、「sed」コマンドを使用しますが、Macでは改行コード等が上手く読み込めないため、「gnu-sed」をインストールする必要があります。

環境

  • Mac Intel Ventura 13.1

「gsed」のインストール

brew」をインストールしている状態にします。
次に以下のコマンドで「gsed」をインストールします。

$ brew install gnu-sed

「gsed」で置換処理

以下は、「swagger」ファイルの「http」を「https」に変換する場合の処理となります。

$ gsed -i -z 's/schemes:\n  - http/schemes:\n  - https/g' api_swagger.yaml