#其用于查找在目录dir下查找所有含有字符串str1的文件
#grep "str1" -rl dir
#我们用的是-i,其用于修改文件里的某个字符串的命令如下: 以下的命令是将str1替换成str2。
#sed -i "" "s/${str1}/${str2}/g"
#注意在mac上使用sed可能会报错,此时只需哎调用命令之前添加如下
#export LC_CTYPE='C'
#脚本使用方法
#source /Users/rrhj/Desktop/人人视频/modifyProject.sh
currentProjectName="PPVideo"
targetProjectName="RRVideoHD"
workdir=$(cd$(dirname $0);pwd)
cd$workdir
exportLC_COLLATE='C'
exportLC_CTYPE='C'
#echo $workdir
#--exclude= 排除某个文件
# xargs它能够捕捉一个命令的输出,然后传递给另外一个命令,由于很多命令不支持 | 管道来传递参数,而日常工作中有这个必要,所以就有了xargs命令
# grep "PPVideo" -rl /Users/rrhj/Desktop/人人视频/* --exclude=modifyProject.sh | xargs sed -i "" "s/PPVideo/RRVideoHD/g"
grep"${currentProjectName}"-rl ${workdir}/* --exclude=modifyProject.sh | xargs sed -i"""s/${currentProjectName}/${targetProjectName}/g"
echo "更改文件成功"
## 更改目录
mkdir -p ./${targetProjectName}
mv ./${currentProjectName}/* ./${targetProjectName}
rm -rf ./${currentProjectName}/
# 更改xcodeproj文件名
mv ./${currentProjectName}.xcodeproj ./${targetProjectName}.xcodeproj
# 更改scheme,多个的话可以自行增加修改
mv ./${targetProjectName}.xcodeproj/xcshareddata/xcschemes/${currentProjectName}.xcscheme ./${targetProjectName}.xcodeproj/xcshareddata/xcschemes/${targetProjectName}.xcscheme
# 修改xworkspace名
mv ./${currentProjectName}.xcworkspace ./${targetProjectName}.xcworkspace
网友评论