LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1692|回复: 11

shell中利用ssh同时启动多个远程任务的问题,请教

[复制链接]
发表于 2008-12-26 13:58:00 | 显示全部楼层 |阅读模式
我想在机器A上运行一个bash脚本,脚本的作用主要是利用ssh登录机器B和机器C,然后启动B和C的任务APP使之同时运行。请问bash脚本可以做到吗?
发表于 2008-12-26 14:58:24 | 显示全部楼层
ssh 是可以直接执行一个远程程序而不启动bash的。

所以你这个需求只需要两行代码就可以办到。

问题在于ssh 认证,你要确保 rsa 认证是正常的(就是说使用方法二认证,而不使用密码)。
回复 支持 反对

使用道具 举报

发表于 2008-12-26 18:06:01 | 显示全部楼层
使用expect可以自动登录运行远程机器上脚本
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-12-28 12:06:00 | 显示全部楼层
Post by poet;1930025
ssh 是可以直接执行一个远程程序而不启动bash的。

所以你这个需求只需要两行代码就可以办到。

问题在于ssh 认证,你要确保 rsa 认证是正常的(就是说使用方法二认证,而不使用密码)。
用户只能与机器A进行交互,但是用户需要运行存放在机器B和C上的两个可执行文件,使之并行运行,而不是串行
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-12-28 12:09:06 | 显示全部楼层
ssh B PATH/ELF_FILE_B
    ssh C PATH/ELF_FILE_C
这个好像是串行运行的吧,只有ELF_FILE_B运行完毕之后才会运行C上的ELF_FILE_C
    刚开始学shell编程,请指教啊,谢谢
回复 支持 反对

使用道具 举报

发表于 2008-12-28 12:44:19 | 显示全部楼层
将ssh B PATH/ELF_FILE_B 在后台运行就可以立即响应ssh C PATH/ELF_FILE_C吧。可以不?我还没学shell,哈哈……
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-12-28 21:39:59 | 显示全部楼层
Post by 月魄孤魂;1930842
将ssh B PATH/ELF_FILE_B 在后台运行就可以立即响应ssh C PATH/ELF_FILE_C吧。可以不?我还没学shell,哈哈……
ssh B在后台运行,然后ssh C:这样运行结果只是将B的打印输出信息显示出来,而没有显示C的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-12-28 21:42:54 | 显示全部楼层
Post by sinQ;1931086
ssh B在后台运行,然后ssh C:这样运行结果只是将B的打印输出信息显示出来,而没有显示C的
错了,是只显示C的,没有显示B的
回复 支持 反对

使用道具 举报

发表于 2008-12-30 00:25:31 | 显示全部楼层
同时打印两个任务的信息岂不是很乱!?为什么一定要显示,重定向不行吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-12-31 16:14:32 | 显示全部楼层
Post by 月魄孤魂;1931628
同时打印两个任务的信息岂不是很乱!?为什么一定要显示,重定向不行吗?
不一样嘛,重定向也没输出
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表