簡體   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