繁体   English   中英

Groovy上包含转义斜线的文字字符串

[英]A literal string containing escape slashes on groovy

我的常规脚本通过流浪汉调用其他命令。 这些命令之一是在docker中的文件上回显一些引号。

目标是,在容器内,我要BB_GENERATE_MIRROR_TARBALLS = "1" 现在要在bash脚本上执行此操作,我将需要以下内容:

BB_GENERATE_MIRROR_TARBALLS = \\"1\\"

当我也必须避免在常规中使用双引号时,问题就显现出来了。

如果我在groovy文件中调用vagrant("echo BB_GENERATE_MIRROR_TARBALLS = \\\\\\"1\\\\\\" >> ${yoctoDir}/build/conf/local.conf" ,则local.conf上的结果将为BB_GENERATE_MIRROR_TARBALLS=1 (不带引号)。

正确的方法是在两侧都包含一个额外的反斜杠(groovy为3,bash脚本为1),但是当我这样做时,groovy无法运行并给我语法错误。

将这种文字字符串( BB_GENERATE_MIRROR_TARBALLS=\\"1\\" )插入到Groovy中的正确方法是什么?

groovy您可以执行以下操作:

def my_var = /BB_GENERATE_MIRROR_TARBALLS = "1"/
echo my_var >> ${yoctoDir}/build/conf/local.conf

暂无
暂无

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

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