bash - bash 脚本因预期二进制运算符而失败
问题描述
我有一个 bash 脚本,它检查一个特定的字符串并继续进行,但似乎在预期二进制运算符时出现了一些错误
local artifacts=$(realpath artifacts)/middle-end
local env
local account_id=${1}
local branch_name=${2}
local user_environments=${3}
local gitlab_user_id=${4}
env=$(ci/scripts/get-details-env.py -m "${user_environments}" -u "${user_id}")
# Deploy to int1 from develop
echo "$branch_name"
if [ "${branch_name}" == "develop" ]; then
env=brt-int;
fi
if [ "${branch_name}" =~ ^brt-rc-.* ]; then
env=brt-uat;
fi
mkdir -p ${artifacts}
cd middle-end
ln -s ${NODE_PATH} ./node_modules
npm run build
解决方案
我知道您的问题是什么,您必须使用新的测试运算符[[
。[ http://mywiki.wooledge.org/BashFAQ/031][bash新测试详情]
if [[ "${branch_name}" =~ ^atf-rc-.* ]]; then
env=atf-stage1;
fi
推荐阅读
- r - 读取带有 SQL Server 偏移量的日期时间作为 R 中的日期时间
- angular - 清晰向导:如何将向导页面拆分为单独的组件
- c# - 如何将我的代码从使用不记名令牌身份验证更改为基本身份验证以连接到 GraphQl 端点?
- kotlin - 在 Kotlin 中随房间流动
- reporting-services - 如何从不同的数据集中为 SSRS 报告中的参数选择默认值
- django - 如何在 Django 中使用外键的 uuid 进行过滤?
- spring-boot - 从 IntelliJ 社区版启动 springboot 应用程序
- javascript - 加载时无法隐藏按钮
- xml-libxml - XML::LibXML::Node:如何让祖节点采用孙节点,消除父节点?
- excel - Excel中如何根据数量计算和获取总值