博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux shell 远程执行命令
阅读量:4987 次
发布时间:2019-06-12

本文共 766 字,大约阅读时间需要 2 分钟。

经常要部署多台服务器上面的应用,如果一个个机器的登录太麻烦。

所有就想到编写一个脚本来部署不同的服务器

前提条件:

     配置ssh免登陆 

    如果不会的请参加我的另外一篇文章 http://blog.csdn.net/chenpy/article/details/30281515

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

[java] 
 
 
  1. ssh user@remoteNode "cd /home ; ls"  

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

  1. 双引号,必须有。如果不加双引号,第二个ls命令在本地执行
  2. 分号,两个命令之间用分号隔开

(2)脚本的方式 

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

[java] 
 
 
  1. #!/bin/bash  
  2. ssh root@192.168.0.23   << remotessh  
  3. killall -9 java  
  4. cd /data/apache-tomcat-7.0.53/webapps/  
  5. exit  
  6. remotessh  
 

 

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

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

 

[html] 
 
 
  1. ssh root@192.168.0.23 > /dev/null 2>&1   <remotessh  

 

OK,大功告成。

参考文档:http://www.cnblogs.com/ilfmonday/p/ShellRemote.html

转载于:https://www.cnblogs.com/djoker/p/8342500.html

你可能感兴趣的文章
session服务器Nginx+Tomcat+Memcached集群Session共享
查看>>
javascript的时间描述图怎么写
查看>>
Maximum Gap 164
查看>>
Robot Framework Share 4
查看>>
【LeetCode】155. Min Stack
查看>>
【LeetCode】214. Shortest Palindrome
查看>>
现有资源和jsapi的融合一种方式
查看>>
UICollectionViewController的简单使用及一些注意点(json)
查看>>
Vue.js 源码分析(十三) 基础篇 组件 props属性详解
查看>>
Ubuntu系统升级内核方法
查看>>
Spring Bean单例与线程安全
查看>>
EasyUI datagrid.getSelections 没有返回正确的选择行数
查看>>
分享一个随机重排函数(C#)
查看>>
Asp.Net Core在CentOS部署与注意
查看>>
自反+递归 实现评论的无限引用
查看>>
新闻发布系统
查看>>
NOIP提高组2016 D1T2 【天天爱跑步】
查看>>
数据结构基础(19) --堆与堆排序
查看>>
HTML基础
查看>>
Window通过cmd查看端口占用、相应进程、杀死进程
查看>>