需求是替換工程所有.h和.m文件中的‘macbook air’ 為 ‘HH’
首先思路是cd到該文件夾,使用sed命令替換字符串:
<pre> grep 'macbook air' . -r -n | sed -i 's/macbook air/HH/g'</pre>
報(bào)錯(cuò) :
sed: -i may not be used with stdin
google反饋 : Mac OSX的sed是BSD版本的铃在,sed -i 之后需要加參數(shù)表示備份原文件.按教程使用以下命令依然報(bào)該錯(cuò)誤:
<pre> 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'</pre>
換perl命令,搞定:
<pre> find . -name '.h' -o -name '.m' | xargs perl -pi -e 's/macbook air/HH/'</pre>