CloudBuild Bash 风格的字符串操作

CloudBuild Bash-style string manipulation

我需要从 TAG_NAME 默认变量中提取一个字符串。但我无法让它工作。

- name: 'gcr.io/cloud-builders/git'
  id: find-folder-name
  dir: ${_DIR}
  entrypoint: 'bash'
  args:
    - '-c'
    - |
      if [ ${_STRATEGY} = "tag" ]; echo "tag name " $TAG_NAME; echo ${TAG_NAME%\.np\.v\.*};fi
  volumes:
  - name: 'ssh'
    path: /root/.ssh
  secretEnv: ['GCLOUD_SERVICE_KEY']

如果我只是 运行 在本地的 gitbash 中正则表达式工作得很好。 输出如下,我希望它也会打印“测试”,但它是空的。这是输出

tag name  test.np.v.1.1.7

通过分配给变量来修复

release=$TAG_NAME;echo ${release%\.np\.v\.*}