Encryption jenkins密码加密,转义${}个字符
我正在尝试使用以下groovy脚本加密字符串Encryption jenkins密码加密,转义${}个字符,encryption,jenkins,groovy,escaping,special-characters,Encryption,Jenkins,Groovy,Escaping,Special Characters,我正在尝试使用以下groovy脚本加密字符串${PASSWD}。将\用于转义$,将\用于{or} import hudson.util.Secret def secret = Secret.fromString("\$\\{PASSWD\\}") println(secret.getEncryptedValue()) def decrypt = Secret.fromString("/WaEf5KeDpbhnjW+hBmV3kmpmQbwoTFh2oI1yFSuUf0=") println(
${PASSWD}
。将\用于转义$,将\用于{or}
import hudson.util.Secret
def secret = Secret.fromString("\$\\{PASSWD\\}")
println(secret.getEncryptedValue())
def decrypt = Secret.fromString("/WaEf5KeDpbhnjW+hBmV3kmpmQbwoTFh2oI1yFSuUf0=")
println(decrypt.getPlainText())
我得到以下输出:
/WaEf5KeDpbhnjW+hBmV3kmpmQbwoTFh2oI1yFSuUf0=
/WaEf5KeDpbhnjW+hBmV3kmpmQbwoTFh2oI1yFSuUf0=
但是,所需的输出应该是
/WaEf5KeDpbhnjW+hBmV3kmpmQbwoTFh2oI1yFSuUf0=
${PASSWD}
似乎我没有正确使用转义字符。如何将${PASSWD}
作为字符串传递?只需使用单引号即可
def secret = Secret.fromString('${PASSWD}')
只需使用单引号
def secret = Secret.fromString('${PASSWD}')
根据你想逃避的地方,这是非常有用的:
对于使用秘密存储,我需要使用6次反斜杠来获得1个反斜杠,我最终需要在sed命令中使用该反斜杠来转义正斜杠。根据您要转义的内容,这非常有用: 为了使用秘密存储,我需要使用6次反斜杠来获得1次反斜杠,我最终需要在sed命令中使用1次反斜杠来避开正向斜杠