1.说明

此脚本可分发两类文件,1.固定内容文件,2.(每台被分发主机)内容不同的文件

ppp.sh为拨号脚本,每台被分发主机内容不同

根据分发文件名字不同(ppp.sh和其他文件)自动选择分发方式

2.脚本

#!/bin/sh

files=$
ip=$
port=$ [ -z "$files" ]&&{
echo ''
exit
} [ -z "$ip" ]&&{
echo ''
exit
} [ -z "$port" ]&&{
echo ''
exit
} path= if [ "$files" = "ppp.sh" ];then
dir=`cat /proc/sys/kernel/random/uuid`
rm -rf /tmp/.$dir
mkdir /tmp/.$dir cp ppp0.txt /tmp/.$dir/ppp.sh
echo "ip2='"$ip"'" >> /tmp/.$dir/ppp.sh
echo "sshport='"$port"'" >> /tmp/.$dir/ppp.sh
cat ppp1.txt >> /tmp/.$dir/ppp.sh ssh -o ConnectTimeout= -p $port root@${ip} date > /dev/null
if [ $? -eq ];then
scp -P $port /tmp/.$dir/ppp.sh root@${ip}:/root
if [ $? -ne ];then
echo ''
rm -rf /tmp/.$dir
exit
fi ssh -o ConnectTimeout= -p $port root@${ip} 'chmod 700 ppp.sh'
if [ $? -eq ];then
echo ''
rm -rf /tmp/.$dir
exit
else
echo ''
rm -rf /tmp/.$dir
exit
fi
else
echo ''
rm -rf /tmp/.$dir
exit
fi
else [ -f "$files" ]||{
echo ''
exit
} ssh -o ConnectTimeout= -p $port root@${ip} date > /dev/null
if [ $? -eq ];then
scp -P $port $files root@${ip}:/root
if [ $? -ne ];then
echo ''
exit
fi temp=`ssh -o ConnectTimeout= -p $port root@${ip} "sh $files"`
if [ $? -eq ];then
echo ''
exit
else
echo ''
exit
fi else
echo ''
exit
fi fi
[root@zxserver05 sync_script]# ./sync_script.sh ppp.sh wzdx1.leyuyun.com
ppp.sh % .8KB/s :
--执行成功
--文件未指定
--ip未指定
--port未指定
--ssh连接失败
--文件远程至讯失败
--指定文件不存在
--文件上传失败

注:分发"其他"类型的文件,最好指定决定路径。

linux文件分发脚本的更多相关文章

  1. 【转】嵌入式Linux文件系统启动脚本及分析

    原文网址:http://www.linuxidc.com/Linux/2011-03/33728.htm 在内核初始化完成后,嵌入式linux 文件系统的启动过程主要包含以下几个步骤: 1. 执行/s ...

  2. Linux文件拷贝脚本

    在工作中,我们经常遇到要从Linux服务器拷贝日志至本地或者定期清理日志的需求,在服务器上,大型系统的日志是按模块存储的,这就导致日志的文件目录较多且层级不统一.我们从众多的目录手工筛选要下载或者删除 ...

  3. linux文件归档脚本

    #!/bin/bash range= dir="/app/xx/logs" bak_dir="/app/xx/logs_archive" cd $dir $ra ...

  4. centos shell编程4【分发系统】 服务器标准化 mkpasswd 生成密码的工具 expect讲解 expect传递参数 expect自动同步文件 expect指定host和要同步的文件 expect文件分发系统 expect自动发送密钥脚本 Linux脚本执行方式 第三十八节课

    centos shell编程4[分发系统] 服务器标准化  mkpasswd 生成密码的工具  expect讲解   expect传递参数   expect自动同步文件  expect指定host和要 ...

  5. Linux centosVMware运行告警系统、分发系统-expect讲解、自动远程登录后,执行命令并退出、expect脚本传递参数、expect脚本同步文件、指定host和要同步的文件、shell项目-分发系统-构建文件分发系统、分发系统-命令批量执行

    一运行告警系统 创建一个任务计划crontab -e 每一分钟都执行一次 调试时把主脚本里边log先注释掉 再次执行 没有发现502文件说明执行成功了,每日有错误,本机IP 负载不高 二.分发系统-e ...

  6. linux下shell脚本执行jar文件

    最近在搞一个shell脚本启动jar文件个关闭jar文件的东东.搞得我都蛋疼了.今天晚上终于弄好了 话说,小弟的linux只是刚入门,经过各方查资料终于搞定了.话不多说,下面开始上小弟写的shell脚 ...

  7. JMeter学习-027-JMeter参数文件(脚本分发)路径问题:jmeter.threads.JMeterThread: Test failed! java.lang.IllegalArgumentException: File distributed.csv must exist and be readable解决方法

    前些天,在进行分布式参数化测试的时候,出现了如题所示的错误报错信息.此文,针对此做一个简略的重现及分析说明. JMX脚本线程组参数配置如下所示: 参数文件路径配置如下所示: 执行JMX脚本后,服务器对 ...

  8. linux执行sh脚本文件命令

    linux执行sh脚本文件命令 很多时候需要多个命令来完成一项工作,而这个工作又常常是重复的,这个时候我们自然会想到将这些命令写成sh脚本,下次执行下这个脚本一切就都搞定了,下面就是发布代码的一个脚本 ...

  9. linux文件系统启动流程、启动脚本

    linux文件系统启动流程.启动脚本 下面是一张Linux启动流程图: 在了解启动流程之前,我们应该先知道系统的几个重要脚本和配置文件,他们对应的路径为: 1. /sbin/init 2. /etc/ ...

随机推荐

  1. 调整 FMX Android 文字显示「锯齿」效果

    说明:调整 Firemonkey Android 显示文字有「锯齿」效果 适用:Firemonkey Android 平台 修改方法: 请将源码 FMX.FontGlyphs.Android.pas  ...

  2. 树链剖分求LCA

    树链剖分中各种数组的作用: siz[]数组,用来保存以x为根的子树节点个数 top[]数组,用来保存当前节点的所在链的顶端节点 son[]数组,用来保存重儿子 dep[]数组,用来保存当前节点的深度 ...

  3. <welcome-file-list>标签的控制作用以及在springmvc中此标签的的配置方式

    我们在写安全性较高的网站时必然会对网站的入口进行限制, 而在这其中其关键作用的就是网站的根目录下WEB-INF中的web.xml中<welcome-file-list>  <welc ...

  4. Criteria查询初学者的采纳点哦

    一.Hibernate提供了5种检索对象的方式 1.导航对象图检索方式:根据已经加载的对象导航到其他对象    from  Emp e group by e.dept.deptName 2.OID检索 ...

  5. velocity-tools-beta1.jar与velocity-tools.jar不兼容

    今天在升级了某些依赖jar的版本启动一项目后,velocity中的有些定义在common.vm中变量居然变成了null,没能include进来导致,而没升级的环境是ok的,经过反查,最后发现是将vel ...

  6. 2014年3月新鲜出炉的最佳 JavaScript 工具库

    一个 JavaScript 库是预先编写的 JavaScript 程序,用于简化 Web 应用程序开发,特别是对 Ajax 和其它 Web 为中心的技术.JavaScript 提供了多种方法,通过它来 ...

  7. easyui日期在未加载easyui-lang-zh_CN.js出现英文的情况下加载中文的方法

    我们有时候在操作easyui的时候本来是加载了easyui-lang-zh_CN.js中文文件包,但是还是出现了英文.使得我们不得埋怨这框架咋这么不好用,其实我们仔细看看这个中文包就会发现里面很多都是 ...

  8. Hybrid框架UI重构之路:五、前端那点事儿(HTML、CSS)

    上文回顾 :Hybird框架UI重构之路:四.分而治之 这里讲述在开发的过程中,一些HTML.CSS的关键点. 单页模式的页面结构 在单页模式中,弱化HTML的概念,把HTML当成一个容器,BODY中 ...

  9. iOS:JSON格式字符串转字典,字典转JSON格式字符串

    在iOS开发中,和服务器交互中,经常用到字典和JSON格式字符串相互转换. 代码如下: 1.JSON格式字符串转字典 + (NSDictionary *)dictionaryWithJsonStrin ...

  10. 简单代码在ABAP中实现声音的播放

    这段代码的功能是在SAP里面实现声音的播放,可以用作程序提醒功能,和SAP里面’噹噹噹’那个声音的意思差不多.将来在项目中遇到客户想要SAP ABAP发出一点声音的时候就可以参考一下这个程序. REP ...