文档章节

本地shell执行远程命令

 黑狗007
发布于 2015/12/26 11:43
字数 352
阅读 85
收藏 14

转载 http://blog.csdn.net/chenpy/article/details/43969967

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

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

前提条件:

     配置ssh免登陆 

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



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

[java] view plaincopy在CODE上查看代码片派生到我的代码片

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

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

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

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

(2)脚本的方式 

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

[java] view plaincopy在CODE上查看代码片派生到我的代码片

  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] view plaincopy在CODE上查看代码片派生到我的代码片

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

OK,大功告成。

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


本文转载自:

共有 人打赏支持
粉丝 1
博文 75
码字总数 14512
作品 0
广州
Linux下几种反弹Shell方法的总结与理解

  *本文原创作者:LlawLiet,本文属FreeBuf原创奖励计划,未经许可禁止转载。   之前在网上看到很多师傅们总结的linux反弹shell的一些方法,为了更熟练的去运用这些技术,于是自己花精力...

FreeBuf
07/27
0
0
轻量级运维利器pssh、pdsh和mussh的使用以及区别

运维利器pssh、pdsh和mussh的使用技巧 今天周末,加上下雨天。没打算出门,翻了几页书,怕日后容易忘记,做个笔记,总结一下批量运维工具的一些使用方法以及异同之处。 其中给出pssh的5个程序...

我不是三爷
2017/07/16
0
0
【Absible学习】Ansible常用模块---命令类模块

command模块 command模块可以在远程主机上执行命令,在远程主机中执行命令时,不会经过远程主机的shell处理,如果需要执行的命令中含有重定向、管道符等操作,这些符号也会失效,比如"<", ">...

justin_peng
06/27
0
0
每天一个 Linux 命令(59): rcp 命令

原文出处:peida rcp代表“remote file copy”(远程文件拷贝)。该命令用于在计算机之间拷贝文件。rcp命令有两种格式。第一种格式用于文件到文件的拷贝;第二种格式用于把文件或目录拷贝到另...

peida
2017/02/06
0
0
Java程序调用ssh, scp, sftp

在java里可以通过Ganymed SSH-2, Expect4j等实现ssh登录,由于Ganymed SSH-2是纯java实现,并且可以实现scp,sftp等,因此我们采用Ganymed SSH-2 1> 下载安装 从http://code.google.com/p/ga...

cto-jp
2013/07/19
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Java 并发编程原理

为什么要使用多线程? 通过多线程提高吞吐量 伸缩性比较好,可以增加 CPU 核心来提高程序性能 什么场景下使用多线程? 如:tomcat BIO Java 如何实现多线程? Thread、Runnable、ExecutorSer...

aelchao
34分钟前
2
0
谨慎的覆盖clone方法

说在前面 有些专家级程序员干脆从来不去覆盖clone方法,也从来不去调用它,除非拷贝数组。 其他方式 可以提供一个构造函数或者工厂去实现clone功能。 相比于clone,它们有如下优势: 不依赖于...

XuePeng77
35分钟前
1
0
什么是最适合云数据库的架构设计?

分布式数据库技术发展多年,但是在应用、业务的驱动下,分布式数据库的架构一直在不断发展和演进。 开源金融级分布式数据库SequoiaDB,经过6年的研发,坚持从零开始打造数据库核心引擎。在技...

巨杉数据库
43分钟前
4
0
源码模仿之RPC

源码模仿之RPC RPC - 远程过程调用,概念不多赘述,可自行百度。 场景 统一api接口 生产者(提供远程接口调用方) 使用者(主动调用远程接口) 代码实现 API接口(公共依赖包) DemoEntity (...

GMarshal
44分钟前
1
0
Linux之安装Tomcat8

最近要在Linux上安装Tomcat,记录下 1.进入tomcat8的安装目录 List-1 root@iZwz9bjiawhqzfsklyht4rZ bin]# pwd/opt/app/tomcat8/bin[root@iZwz9bjiawhqzfsklyht4rZ bin]# ll总用量 83......

克虏伯
45分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部