sshpass:无法运行命令:没有这样的文件或目录

Leo*_*Leo 5 jenkins-pipeline

我正在尝试运行远程脚本shJenkins将脚本更改为可执行文件,但出现以下错误:

\n\n
[-manager_feature_kubernetes-YYLYXREUAV4NHLBACWJHV5YMQFOGHM4SS7G67ASIGYSZZGVS4VBQ] Running shell script\n+ sshpass -p **** ssh\'****@10.XX.XX.XXX chmod u + x /home/Script.sh \'\nsshpass: Failed to run command: No such file or directory\n
Run Code Online (Sandbox Code Playgroud)\n\n

我的脚本的逻辑是:\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0

\n\n
sh "sshpass -p \\" $ {passSSH} \\ "ssh ${userSSH}@10.XX.XX.XXX \\" chmod u + x /home/Script.sh \\ ""\n
Run Code Online (Sandbox Code Playgroud)\n\n

有人可以帮忙吗?

\n

Sha*_*aze 6

你有没有尝试过这个:

sshpass -p '$rootPassword' ssh -o 'StrictHostKeyChecking=no' $isRoot@$Host "chmod u+x /home/$USER/Script.sh"
Run Code Online (Sandbox Code Playgroud)


Mat*_*ito 5

就写在这里:我的docker容器没有lftp安装包

一个简单的apt-get install lftp解决了这个问题。

希望它会有所帮助;)

  • 伟大的!这取决于您的命令,但也可能是“rsync”包或类似的东西。 (3认同)

小智 0

$rootPassword,$isRoot,$Host 是 Jenkins 字符串参数

sshpass -p ""$rootPassword"" ssh $isRoot@$主机 ID; 回显$HOME;