你的位置:首页 > 网海拾贝

linux shell远程执行命令

2011-06-06 浏览:(5136) 网海拾贝 评论(0)

经常要部署多台服务器上面的应用,如果一个个机器的登录太麻烦。所有就想到编写一个脚本来部署不同的服务器。

前提条件:配置ssh免登陆

(1)命令行执行登录并且在目标服务器上执行命令

ssh user@remoteNode "cd /home ; ls" 

基本能完成常用的对于远程节点的管理了,几个注意的点:

双引号,必须有。如果不加双引号,第二个ls命令在本地执行

分号,两个命令之间用分号隔开

(2)脚本的方式

这个正式我想要的方式,在目标服务器上执行批量的命令。

#!/bin/bash 

ssh root@192.168.0.23   << remotessh 

killall -9 java 

cd /data/apache-tomcat-7.0.53/webapps/ 

exit 

remotessh 

远程执行的内容在“<< remotessh ” 至“ remotessh ”之间,在远程机器上的操作就位于其中,注意的点:<< remotessh,ssh后直到遇到remotessh这样的内容结束,remotessh可以随便修改成其他形式。在结束前,加exit退出远程节点

如果不想日志文件在本机出现可以修改配置

ssh root@192.168.0.23 > /dev/null 2>&1   << remotessh 

OK,大功告成。

  • 发表评论
  • 查看评论
【暂无评论!】

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。