👛
テキストの置換コマンドについて
背景
PHPの学習をしている時にDockerを使用してローカルで開発をしています。
そこでよくターミナルでコマンドを使用していた時に「テキスト置換ってどのようにやるんだろう?」ふと思ったので、備忘録として残しておきます。
環境:MacBook Air AppleM2
環境設定
Macでは標準でsedコマンドがありますが、オプションなどが一般的な(Linux系)とは異なるそうなのでそちらに合わせるための準備をします。
ターミナルでGNU版sedをインストールする
brew install gnu-sed
これで完了。
あとは、対象のファイルを指定して、置換するテキストと置換後のテキストを指定して完了
対象ファイル:index.php
置換対象文字:テスト
置換後文字:hogehoge
sed 's/テスト/hogehoge/g' index.php
もしもの為にバックアップファイルを取りたいときは-i.bak
とオプションをつけて実行を行う。
sed -i.bak 's/テスト/hogehoge/g' index.php
-iがオプションで.bakは任意の拡張子名なので.bak以外でも何でも良い。
Discussion