はじめに
Macで以下のようにsed
コマンドを実行するとエラーとなります。
$ cat sample.txt
sample
sample
sample
sample
sample
$ sed -i 's/sample/EXAMPLE/' sample.txt
sed: 1: "sample.txt": unterminated substitute pattern
これを回避する方法について記載します。
上書きする方法
以下のように実行することで上書きできます。
sed -i '' 's/sample/EXAMPLE/' sample.txt
GNU sed
をインストール
上記のコマンド以外にGNU sed
をインストールすることでエラーを回避できます。
brew install gnu-sed
インストール後に以下のように実行すると上書きできます。
gsed -i 's/sample/EXAMPLE/' sample.txt
gsed
コマンドをsed
コマンドとして使用したい場合には~/.zshrc
に以下を追記します。
~/.zshrc
alias sed='gsed'