Mac批量替换字符串

需求是替换工程所有.h和.m文件中的‘macbook air’ 为 ‘HH’


首先思路是cd到该文件夹,使用sed命令替换字符串:
 grep 'macbook air' . -r -n | sed -i 's/macbook air/HH/g'

报错 :

sed: -i may not be used with stdin

google反馈 : Mac OSX的sed是BSD版本的,sed -i 之后需要加参数表示备份原文件.按教程使用以下命令依然报该错误:

 grep 'macbook air' . -r -n | sed -i '' 's/macbook air/HH/g'
grep 'macbook air' . -r -n | sed -i ‘.bak’ 's/macbook air/HH/g'

换perl命令,搞定:

 find . -name '.h' -o -name '.m' | xargs perl -pi -e 's/macbook air/HH/'

linux命令使用教程,可以看这里

你可能感兴趣的:(Mac批量替换字符串)