【问题标题】:Create file using variable replace AND replace certain characters in string使用变量替换创建文件并替换字符串中的某些字符
【发布时间】:2019-08-27 09:13:22
【问题描述】:

我正在开发一个 gitlab-ci 脚本,该脚本将采用提交标记(例如:0.1.6),并使用它来创建文件。但是文件名不能有“.”,需要用“-”代替。 (新文件名将是“0-1-6”)

我一直在玩以下:

$ string="0.1.6"
$ echo "$string" | tr . -
0-1-6

显然,这不会创建文件名,我无法弄清楚如何将两者合并(与 echo 或 touch 结合使用?)我不确定这是否是进行字符串替换的最佳方法,我尝试过它与 sed,但无法使其工作。如果有人对如何使用该提交标记创建文件并用替换字符命名文件有任何建议,我将不胜感激。

谢谢。

【问题讨论】:

  • 我至少找到了一种方法,但我愿意接受建议。 $ echo $string 0.1.6 $ touch `echo $string | tr . -` $ ls 0-1-6

标签: linux shell gitlab-ci


【解决方案1】:

您可以将字符替换为

"${string//./-}"

所以你可以

touch "${string//./-}"

【讨论】:

    【解决方案2】:
    touch $(echo "$string" | tr . -)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-08-23
      • 2020-07-09
      • 2023-03-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-16
      相关资源
      最近更新 更多