osx標準のsedはPOSIX sedなので-iオプションが使えないので不便極まります。
GNU sedがhomebrewに入っているので以下のコマンドでインストール。
$ brew install gnu-sed
これで、ディレクトリ以下のtxt
ファイルのhoge
をhage
に書き換えるのに以下のコマンドだけで済みます。
$ gsed -i "s/hoge/hage/g" *.txt
-iオプションがないPOSIX sedならおそらく以下のようになります。
$ for i in *.txt; do cat $i | sed "s/hoge/hage/g" > $i.new; mv $i.new $i; done
最悪!
素直にgnu-sedインストールすべきですね。
個人的はosx標準のsedをzshのaliasで上書きしています。
.zshrc
alias sed='gsed'
sed便利
追記
コメントにてgnu-sedを標準のsedの代わりにデフォルトで使う設定にするインストール方法を教えていただきました
--with-default-names
オプションを付けます
$ brew install gnu-sed --with-default-names
homebrew便利
追記の追記
いつもは kobito で書いてるんだけどqiitaで追記 書いてる時に絵文字パレットの存在を知ってしまって絵文字欲が抑えきれなくなりました