在升级 flask 项目时需要使用 sed 替换文件内容,但是在 Mac 竟然报错:
$ find . -type f -name "*.py" | xargs sed -i "s/flask_restplus/flask_restx/g"
sed: 1: "./migrations/env.py": invalid command code .
这个错误是因为 Mac 的 sed 命令和 linux 的 sed 命令使用方式不同,Mac 上默认修改时是有备份机制的。
所以,在 Mac 下使用 sed 命令可选择不使用备份:
$ find . -type f -name "*.py" | xargs sed -i "" "s/flask_restplus/flask_restx/g"
如果要备份,需要加上备份后缀:
$ find . -type f -name "*.py" | xargs sed -i ".bak" "s/flask_restplus/flask_restx/g"
呃。。。最好还是别要备份了。。。