Gitlab CI-使用导出设置变量



我有以下URL:

NEW_URL=谷歌.com/parentproject/subproject/ccc.git

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

上面的命令运行得很好,但当我说时

export DIR="$(NEW_URL|rev|cut-d"/"-f1|rev|cut-c-3(";

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

注意:我在Gitlab CI中使用了这个,并试图获取last/和.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

最新更新