HI

如果你是集群操作, 建议你安装 sshbatch 模块
install:
      sudo cpan SSH::Batch

那么你就可以使用
       atnodes 'sudo ls /tmp' 'host[1-8]'.example.com

如果你的sudo需要终端, 可以使用 -tty 选项, 这个选项要求版本在0.024之上。你如果要使用这个功能可以从github上安装,
或者等一天之后从cpan 上安装。

      atnodes -tty 'sudo ls /tmp' 'host[1-8].example.com'

liseen


2010/11/1 liseen <[email protected]>

>  ssh u...@hostname 'sudo ls /tmp'
>
> 这样直接执行可以吗?
>
>
> 2010/10/30 frostyplanet(plan) <[email protected]>
>
> expect的缺陷在于需要检测shell提示符,因为提示符会根据使用环境而不同。
>> 如果要用expect来登录,最好要给ssh加上 "StrictHostKeyChecking=no" 之类的参数
>> 如果能用ssh信任关系来绕过ssh密码这步的话就最好了,
>> ssh可以用非交互方式执行命令,具体查看man ssh。
>>
>> On Oct 29, 9:59 pm, emacs ray <[email protected]> wrote:
>> > 我需要登录到一些机器的 sudoer 用户上用 sudo 执行一些命令。
>> > 怎么等待远程机器把命令执行完?检测 shell 提示符吗?
>>
>> --
>> 您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。
>> 要向此网上论坛发帖,请发送电子邮件至 [email protected]。
>> 要取消订阅此网上论坛,请发送电子邮件至 
>> [email protected]<perlchina%[email protected]>
>> 。
>> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。
>>
>>
>

-- 
您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。
要向此网上论坛发帖,请发送电子邮件至 [email protected]。
要取消订阅此网上论坛,请发送电子邮件至 [email protected]。
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

回复