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

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

前提条件:

配置ssh免登陆

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

两个错误:

Pseudo-terminal will not be allocated because stdin is not a terminal.

使用ssh -t -t 可以解决

另外一个问题Agent admitted failure to sign using the key.

在ssh之前增加SSH_AUTH_SOCK=0 可以解决。

SSH_AUTH_SOCK=0 ssh luolizhi@10.8.92.87 /bin/bash << remotessh

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

ssh user@remoteNode "cd /home ; ls"

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

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

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

(2)脚本的方式

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

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

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

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

OK,大功告成。

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

在ssh 后面增进/bin/bash 可以使后面的内容(<

# version

unset DEP_ROOT REL_DIR

DEP_ROOT='/tmp'

datestamp=$(date +%Y%m%d%H%M%S)

REL_DIR="${DEP_ROOT}/${datestamp}"

ssh localhost /bin/bash <

if [ ! -d "$DEP_ROOT" ] && [ ! -e "$DEP_ROOT" ]; then

echo "creating the root directory" >&

mkdir "$DEP_ROOT"

fi

mkdir "$REL_DIR"

#echo "$REL_DIR"

exit

EOF

scp -r ./dir1 user@server:"$REL_DIR"

scp -r ./dir2 user@server:"$REL_DIR"

Linux Shell远程执行命令(命令行与脚本方式)

需求:经常需要在一台服务器远程到其他节点的服务器上执行一些shell命令,如果分别ssh到每台主机上再去执行很麻烦,因此能有个集中管理的方式就好了.介绍两种shell命令远程执行的方法. 方式一: s ...

Linux Shell远程执行命令

1.问题描述 经常需要远程到其他节点上执行一些shell命令,如果分别ssh到每台主机上再去执行很麻烦,下边介绍shell命令远程执行的方法. 前提: 远程电脑之间已经配置ssh免密码登陆 2.脚本方 ...

【Python】模块学习之使用paramiko连接Linux,远程执行命令,上传下载、文件

本文主要介绍paramiko远程执行linux命令,及在服务器上进行文件的上传.下载 paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接. ...

linux shell并发执行命令

一般我们在linux上十一shell命令的批量执行操作,一般使用for或者while 循环进行操作,但是这样有一个问题,for或者while本质上是串行的,并不能,如果某一个命令执行耗费的时间比较长, ...

shell远程执行命令

ssh主要参数说明 -l 指定登入用户 -p 设置端口号 -f 后台运行,并推荐加上 -n 参数 -n 将标准输入重定向到 /dev/null,防止读取标准输入 -N 不执行远程命令,只做端口转发 - ...

ssh远程连接linux服务器并执行命令

详细方法: SSHClient中的方法 参数和参数说明 connect(实现ssh连接和校验) hostname:目标主机地址 port:主机端口 username:校验的用户名 password:登 ...

远程执行命令和文件分发shell脚本

deploy.conf node01,all,other,datanode,journalnode,zookeeper, node02,all,other,datanode,journalnode,z ...

随机推荐

【SQL】sql server 2008R2 评估期已过,

参考1:http://www.cnblogs.com 参考2:http://www.wang1314.com 个人认为:升级+秘钥,,买正版才是最终的解决方法.

【原创】cs&plus;html&plus;js&plus;css模式&lpar;六&rpar;&colon;改造ajax&period;js,从原来的原生态js修改为依赖于jquery插件

由于原有的ajax可能在性能上,对于jquery的支持不够并且不够方便,开发人员使用的时候需要知道我们内部指定的后缀文件的设置,基于这个前提我们进行了js的改造 // 使用闭包开发插件 ( ...

unity3d随机地牢生成代码

现在也是处于失业状态,碰巧看到个面试题是要用unity生成个随机地牢,就把做题过程中的思路和代码记录一下吧. 做完了以后我又想了一下,发现其实根本不需要这么麻烦,果然demo里的代码对我的思路影响还是 ...

python2&period;7使用ansible

升级python到2.7后 $ ansible 报错 Traceback (most recent call last): File "/usr/bin/ansible", lin ...

Prevent Adding Component More than once

Question: I'm developing a C# component, I want to prevent the user from adding this component to th ...

Java基础知识强化105:打印数组的方法总结

1. 使用for循环打印数组. 2. 使用Arrays工具类,将数组转化为有序的List打印出来. 3. 使用Arrays工具类,使用Arrays.toString()输出数组内容. 上面三种方法打印 ...

基于ASP&period;NET MVC和Bootstrap搭建响应式个人博客站(一)

1.0 为什么要做这个博客站? www.zynblog.com   在工作学习中,经常要搜索查找各种各样的资料,每次找到相关资料后都会顺手添加到浏览器书签中,时间一长,书签也就满了.而且下次再点击这个 ...

JAVA时钟

效果图如下: //简单动态时钟程序,以图形和数字两种方式来显示当前时间 import javax.swing.*; import java.awt.event.*; import java.awt.* ...

Magnolia-CMS安装配置

Magnolia-CMS安装配置 Magnolia-CMS安装配置 介绍:Magnolia 是一个开源基于Java的Web内容管理系统(CMS),构建在Java内容知识库标准(JSR-170).它适合 ...

application 从web&period;xml中获取初始化参数

1.web.xml中的配置部分   ...

执行远程linux命令,linux shell 远程执行命令相关推荐

  1. kettle脚本Linux执行,kettle在linux下面用于shell脚本执行:转换或者作业

    1 将windows下面创建好的转换,放到Linux某一个文件夹下面.如:把0816_em.ktr文件放到/home/cfj/kettle/testdemo下面. 注意里面的数据库用户名和密码可能需要 ...

  2. Linux 实操———— Shell 远程执行命令

    引言 目前,开发人员的部署方式是,将项目打包(Maven 打包) 然后将 生成的 jar 包等文件,通过Xshell 等终端工具手动传输到远程服务器上,然后再通过在终端执行远程服务器上的 shell ...

  3. linux脚本无法执行命令,为什么Shell脚本执行不成功?原来是这样

    Shell脚本语言是linux系统中内置的一门非常强大的语言,非常善于处理操作系统层面的应用,我们从网上下载的很多应用的安装和启动往往都是用Shell脚本语言写的.可是初步开始使用linux的小伙伴是 ...

  4. Linux高阶—shell远程批处理脚本(七)

    目录 介绍:简单.实用的批处理脚本 案例一:批量下发远程执行命令 案例二:批量下发文件 介绍:实用.简单的批处理脚本 expect是处理交互式命令的命令,它可以将类似ssh登录,ftp登录等等需要交互 ...

  5. linux脚本 source,Shell 的source命令

    http://www.xxlinux.com/linux/article/development/shell/2006-09-22/4499.html http://www.diybl.com/cou ...

  6. Linux 命令的执行过程/Shell提示符/alias命令

    在 Linux 系统中"一切皆文件",Linux 命令也不例外.那么,当编辑完成 Linux 命令并回车后,系统底层是怎么执行的? 1) 内核层 内核层是 UNIX/Linux 系 ...

  7. linux 定时执行搅拌,Linux上定时shell脚本

    本文主要介绍在Linux系统上部署定时器,定时执行shell脚本,通过脚本执行sql文件 sql文件 -- 创建表 create table if not exists iot_test.iot_ta ...

  8. linux shell 执行目录,bash shell脚本执行的几种方法

    bash shell 脚本执行的方法有多种,本文作一个总结,供大家学习参考. 假设我们编写好的shell脚本的文件名为hello.sh,文件位置在/data/shell目录中并已有执行权限. 方法一: ...

  9. linux脚本求命令行上整数和,shell脚本--cut命令与awk简单使用

    cut:对内容进行列切割 -d 后面的是分割符,表示用什么符号来分割符来分割列,分隔符使用引号括起来: -f后面跟着要选择的字段列,从1开始,表示第一列,如果要多列,可以用逗号分隔 : -c参数后面跟 ...

  10. Linux常用shell语法和命令

    If else Shell共有三种三种if-else分支 if-fi语句 if-else-fi语句 if-elif-else-fi语句 1.if-else语句 if [ expression ]the ...

最新文章

  1. 利用svn自动同步更新到网站服务器 -- 网摘
  2. seata 集群_【视频】 聊聊分布式事务解决方案seata
  3. linux永久设置nlslang,【图片】Liddy's Linux编译日志(版本8.4)【蕾迪猫的linux吧】_百度贴吧...
  4. as本地仓库更改_将gitee仓库连接GitHub Desktop。新建更改仓库并上传至gitee。
  5. 项目开发优化技巧总结
  6. 什么是Viewport Meta(width详解)及在手机上的应用
  7. POJ 2762 Going from u to v or from v to u? (判断单连通)
  8. (java)word转html并提取word中的目录结构树生成到html页面中的左边树
  9. Day 9 淘宝静态页面练习 reset.css样式重置 头部信息结构及样式 自定义图标的样式
  10. 反欺诈概念库-物联卡/物联网卡/流量卡
  11. Excel催化剂开源第35波-图片压缩及自动旋转等处理
  12. NLP之NER:商品标题属性识别探索与实践
  13. 大型综合网络搭建详细步骤教程
  14. Win10下如何修改系统用户目录名称
  15. 几何光学学习笔记(17)- 4.6光学材料
  16. ios 根据日期知道周几_iOS 获取当前日期是周几
  17. Android 动态代理以及利用动态代理实现 ServiceHook
  18. android硬件加速 setLayerType
  19. P2327 [SCOI2005]扫雷 - 模拟
  20. c语言feek函数读取中文出现乱码

热门文章

  1. React.js绑定this的5种方法
  2. 6.1.1 验证注解的使用
  3. 2016百度实习编程题:括号序列
  4. linux tune2fs简解(每日一令之五)
  5. 高并发场景下数据库的常见问题及解决方案
  6. 用友云平台,真正的云原生架构,加速云应用落地
  7. 在ASP.NET MVC下实现树形导航菜单
  8. [转]语音识别中区分性训练(Discriminative Training)和最大似然估计(ML)的区别...
  9. 《微信公众平台应用开发实战(第2版)》一导读
  10. vijos P1190繁忙的都市(Kruskal)(最小生成树)