繁体   English   中英

Gitlab CI - 使用导出设置变量

[英]Gitlab CI - set variable using export

我有以下 URL:

NEW_URL = google.com/parentproject/subproject/ccc.git

echo $NEW_URL | rev | cut -d"/" -f1  | rev | cut -c -3
ccc

上面的命令工作得很好但是当我说

导出 DIR="$(NEW_URL | rev | cut -d"/" -f1 | rev | cut -c -3)"

我得到没有这样的文件或目录错误..我尝试在 pipe 分隔符周围使用转义字符,但我没有得到结果,只有错误..我试图从 url 中获取 ccc 并将其导出到另一个变量...有人能帮帮我吗?

注意:我在 Gitlab CI 中使用它并尝试获取最后一个 / 和.git 之间的目录名称

您需要使用echo $NEW_URL而不仅仅是$NEW_URL 如所写,您的代码是:

google.com/parentproject/subproject/ccc.git | rev | cut ...

代替

echo google.com/parentproject/subproject/ccc.git | rev | cut ...

所以 bash 正在尝试将google.com/parentproject/subproject/ccc.git作为命令运行,根据您的错误消息,该命令不存在。

作为旁注,您可以使用basename完成您想要完成的工作:

$ filename=$(basename ${NEW_URL})
$ echo ${filename}
ccc.git
$ cutname="${filename%.*}"
$ echo ${cutname}
ccc

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM