比如说我要替换version.txt文件中的version=1.1 为version=1.2,比如test.txt文件内容如下:
version=1.1
此时我们会使用sed来替换,如果是涉及比较多的处理,我们会采用脚本实现,比如sed_shell.sh脚本内容如下:
#!/bin/bash
if [ "x$1" == "x" ]; then
echo please input new version && exit
else
old_version=`cat version.txt |grep version |awk -F "=" '{print $2}'` #获取老的版本号
new_version=$1
echo old_version=$old_version and new_version=$new_version
sed -i s/$old_version/$new_version/g version.txt #替换老版本号为新版本号
fi
linux环境下:执行sh sed_shell.sh "1.2" 命令就可以把verison.txt的老版本号换成新版本号。
但是mac上执行就会报错“invalid command code C”,查看mac sed 发现如下:
说白了,