[英]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.