bash - Microsoft AppCenter 上用于预构建脚本的 bash 脚本错误
问题描述
我在 appcenter 上的预构建脚本有问题。Appcenter 使用 bash 作为预构建脚本。我想在我的 api.js 文件中将“qa.api”更改为“beta.api”。
我尝试了以下方法,但似乎不起作用:
#!/usr/bin/env bash
if [ "$APPCENTER_BRANCH" != "master" ];
then
cd App/Services/
echo "changing QA API to Production API (beta)"
sed -i 's/qa.api/beta.api/g' Api.js
fi
所以我简化了它,但它仍然不起作用:
#!/usr/bin/env bash
cd App/Services/
sed -i 's/qa.api/beta.api/g' Api.js`
有任何想法吗?
解决方案
sed 的-i
选项采用一个参数来指示在进行备份时要添加到文件名的扩展名。与 linux 版本不同,在 macOS 上,此扩展参数是必需的。
尝试在此处提供一个空字符串:
sed -i '' 's/qa.api/beta.api/g' Api.js
推荐阅读
- size - 将样本量添加到箱线图
- linux - 如何将命令/过滤器 awk 包含到命令监视中?
- clojurescript - 无法使用 ClojureScript 检测 Metamask 登录
- typescript - TypeScript 无法在 VSCode 中运行
- windows - 如何将文件的扩展名更改为其他内容?
- angular - 如何切换离子按钮
- javascript - CesiumJS:如何定义瓦片集范围的缩放?
- c++ - 在 Visual Studio 2019 C_language 中不起作用 fopen_s(&file, "filename", mode)
- android - 单击 Tablayout 中的选项卡时移动到 RecylerView 中的特定位置
- typescript - 如何在 TypeScript 中创建全局可用的接口/类型?