linux ant命令 出错,Linux sudo,[ant:sshexec]远程命令失败,退出状态为127

一点背景:

我有一个gradle脚本,我用它来在许多不同的机器上安装和设置几个软件 - 我在本地运行它的目的是加速部署过程。

gradle脚本将图层和服务器名称作为参数获取,并将通过执行远程ssh linux命令(rhel 6)来安装软件。

C:\work\source\tools\environment-tools>gradle -Player=service -Pserver=demo1 installSamba

Using libraries from: C:\work\source/lib

:installSamba

Trying to override old definition of datatype scp

Trying to override old definition of datatype sshexec

--- Executing: yes | yum install samba

--- failOnError = false, using sudo

>>>>>

Command: echo 'sudo_pass' | sudo -Ss 'yes | yum install samba'

[sudo] password for root:

/bin/bash: yes | yum install samba: command not found

[ant:sshexec] Remote command failed with exit status 127

我正在尝试执行的命令:只需使用yum安装samba,但也会触发yes以自动执行默认的samba安装。

问题:

当我执行脚本时,远程执行以下命令来安装samba:

echo'sudo_pass'| sudo -Ss'是| yum install samba'

为什么在以下完美执行时会失败(但是与人工互动,即按y然后返回):

echo'sudo_pass'| sudo -Ss yum install samba

我想我需要正确设置以下小型gradle安装脚本:对我做错了什么的想法?

task installSamba << {

forAllServers { props ->

ssh('yes | yum install samba', props)

}

}

你可能感兴趣的:(linux,ant命令,出错)