我有一个密码变量 PASS,其值为 abc123&zxcv456 当我尝试使用如下密码变量在 jenkins 中执行 SSH 时
sshpass -p ${PASS} ssh -o StrictHostKeyChecking=no [email protected] 'echo '${PASS}' | sudo -S docker stats --no-stream'
仅解释特殊字符 & 之前的字符串,并且变量 PASS 的值被读取为 abc123,有什么帮助来解决这个问题吗?
PS 我尝试过使用转义字符“${PASS}”,但没有任何进展。
答案1
在 Jenkins Pipeline 中,使用内置凭证存储和sshAgent
步将您的 SSH 用户名/密码传递给 ssh 命令。
Freestyle 作业的作业配置 GUI 中有一个类似的选项。
答案2
将密码定义为
abc123\&zxcv456