`
zengshaotao
  • 浏览: 788703 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

shell定时轮询拷贝文件

 
阅读更多

#!/bin/sh

#------------------------------------------------------------------

#脚本功能:从本地特定目录拷贝到远程机器特定目录并更改权限

#文件不存在时就进行轮询,15分钟一次

#脚本需要通过 crontab -e 在系统里进行配置

 

#获取第一个控制台参数,参数的获取不能放在方法体内

#变量名和等号之间不能有空格

date_param=$1

 

#目的机器基础路径

tgt_file_path="/exs/kojki/kye/bxp/"

#目标机器的用户

tgt_user="oracle"

#目标机器的IP

tgt_ip="10.111.17.114"

#当前sh脚本所在的机器路径

local_path="/eu/scan/ghtExp/"

flag=1;#是否继续循环

 

# ------------ main function ------------

main()

{

if [ "${date_param}" = "" ];then

echo "no input date !"

#如果没有输入yyyyMMdd格式的日期,就获取当前日期前一天

date_param=`date  +"%Y%m%d" -d "-1 days"` #文件目录时间

else

echo "input the date is :${date_param}"

    fi

 

echo "..................copy file begin................. "

 

#循环判断数据目录是否存在,存在表明数据已经推送-------------------------

while [ "$flag" -eq 1 ]

do

  if [ ! -d ${local_path}${date_param} ]; then #文件目录不存在

echo "目录不存在,15分钟轮询一次"

sleep 15m

else

echo "目录已经存在"

flag=0;

   fi

done

 

#拷贝当前目录的文件到远程机器

scp -r -P 22022 "${local_path}${date_param}" ${tgt_user}@${tgt_ip}:${tgt_file_path}

echo "..................copy file end................. "

 

echo "..................sleep begin ................ "

#sleep 60

echo "..................sleep end ................ "

 

echo "..................chmod begin ................ "

#登录到远程机器,修改目录的权限

ssh -n -p 22022 ${tgt_user}@${tgt_ip} "chmod -R 777 ${tgt_file_path}${date_param}"

echo "..................chmod end ................ "

}

 

##################################################程序入口##################################################

 

main

分享到:
评论

相关推荐

    S7-1200 PLC MODBUS通信轮询库文件V15版本.rar

    《S7-1200 PLC MODBUS通信轮询库文件V15版本详解》 在工业自动化领域,SIMATIC S7-1200 PLC(可编程逻辑控制器)是西门子推出的一款高效、紧凑型的控制器,常用于中小型自动化系统。而MODBUS通信协议则是工业控制...

    asp.net iframe框架跳转以及定时轮询

    asp.net iframe框架跳转以及定时轮询,子页面将新窗口打开到父窗体指定的iframe框架中,以及http_request轮询方法!时间匆忙只简单的写了简单应用。有时间在完善,希望能帮助到需要的朋友!

    S7-200SMART Modbus轮询应用库(使用说明+库文件).zip

    本篇文章将深入探讨S7-200SMART如何利用Modbus轮询技术实现与其他设备的有效通信,并对提供的库文件进行详尽解析。 1. Modbus简介: Modbus协议始于1979年,最初由Modicon公司开发,现在已成为工业自动化领域的标准...

    设置轮询间隔

    标题中的“设置轮询间隔”通常是指在编程或者系统配置中,为了实现定时任务或监控功能,需要设定一个时间间隔来定期检查或处理数据。这个时间间隔被称为轮询间隔,它在很多IT场景中都有应用,例如在服务器监控、...

    TIA博途modbus轮询全局FB库文件-V17版本-GF-modbus-Poll.zip

    在您提供的资料中,"TIA博途modbus轮询全局FB库文件-V17版本-GF-modbus-Poll.zip",是一个针对TIA博途V17版本的MODBUS通信功能块库,主要用于实现设备间的MODBUS通讯。 MODBUS是一种广泛应用的工业通信协议,它允许...

    TIA博途SCL语言_MODBUS轮询算法_FB库文件.rar

    本资源"MODBUSPOLL轮询"显然是一个关于使用SCL语言在TIA博途中实现MODBUS协议轮询算法的FB(Function Block)库文件。轮询是通信系统中的一种数据采集方式,其中主设备(如上位机)依次询问各个从设备,获取它们的...

    S7-200SMART-modbus轮询源程序(定时器+计数器方式).rar

    根据压缩包子文件的文件名"modbus轮询(定时器+计数器方式-仅需一个MSG指令)",我们可以推测这个压缩包中包含的可能是一个或多个源代码文件,如LAD(逻辑连接)或FBD(功能块图)格式,用于在STEP 7 Micro/WIN ...

    S7-200 SMART MODBUS轮询程序的示例及具体使用方法的解释说明.rar

    《S7-200 SMART MODBUS轮询程序详解与应用指南》 在工业自动化领域,西门子的S7-200 SMART系列PLC因其小巧、灵活、功能强大而受到广泛应用。MODBUS通信协议作为工业设备间通信的通用标准,使得不同厂商的设备能够...

    C#服务,定时查询并启动应用程序包括UI,基于Quartz,可直接运行使用

    C#语言,基于Quartz,可以定时轮询查询程序是否启动。可以启动任何包括UI的程序。首先需要配置App.config,关键字 time_interval:表示轮询间隔(秒) software_paths:启动的应用程序路径,多个用分号间隔 software...

    西门子s7-1200 变频恒压供水系统程序 带触摸屏恒压供水带定时轮询 包含:说明书+程序+电气图 v16及其以上可打开

    西门子s7-1200 变频恒压供水系统程序 带触摸屏恒压供水带定时轮询 包含:说明书+程序+电气图 v16及其以上可打开 可v16组态模拟仿真 可不用连接真实plc 完全模拟过程,软件即可完成

    微信支付+回调轮询.rar

    这个“微信支付+回调轮询.rar”压缩包提供了解决扫码支付完成后页面静止不动的问题,通过js轮询技术确保了支付成功的处理。 1. **微信支付流程** - 用户扫描二维码或点击链接启动支付流程。 - 商户系统后台接收到...

    linux下日志定时轮询的流程详解

    当日志文件不断增长时,就需要进行定时轮询,以保持系统的高效运行和数据管理。本文将深入讲解Linux下日志定时轮询的流程。 首先,我们了解一个名为`logrotate`的工具。`logrotate`是Linux系统中用于日志文件管理的...

    Vue使用轮询定时发送请求代码

    轮询是一种常见的技术,指的是客户端定时向服务器发送请求以检查数据变化的通信方式。Vue.js作为目前流行的前端框架之一,其提供了方便的方式来实现轮询机制。 首先,我们了解轮询的概念。在计算机科学中,轮询是指...

    C++精确定时定时器例子

    ### C++精确定时定时器实现方法解析 #### 背景与意义 在工业生产控制系统及实时数据处理系统中,精确定时是一项至关重要的功能。例如,定时更新显示屏、定时向外部设备发送指令或者定时收集传感器数据等,都需要...

    Modbus-TCP-轮询经典程序.rar

    文件名"Modbus_TCP_Polling"暗示了核心程序文件,它可能包含了实现上述功能的代码。在实际操作中,用户需要了解基本的Modbus-TCP协议原理,包括寄存器类型(如输入寄存器、 Holding Register等)、功能码(如0x03...

    Squiss, 用于 node.js的Amazon SQS轮询器.zip

    Squiss, 用于 node.js的Amazon SQS轮询器 Squiss node.js 4和更高版本的Amazon SQS轮询器和单个队列客户端const poller = new Squiss({ queueName: 'my-sqs-queue', bodyForma

    iOS 中效率极高的多 event 定时器,适用于复杂的轮询任务管理!.zip

    iOS 中效率极高的多 event 定时器,适用于复杂的轮询任务管理!.zip,A simple to use library that gets around a load of problems that arise when you start trying to do much inside 'loop'.

    c# 音乐,播放器,照片轮询,文件加载,频谱显示, bass

    开发者可以通过定时器或事件触发,定时更换歌曲对应的专辑图片,增强用户体验。 4. **文件加载**:文件加载是播放器的重要功能之一,通常需要支持多种音频格式(如MP3、WAV、AAC等)。C#提供了FileStream和FileInfo...

    数字轮询小程序

    在每次轮询时,它会打开指定的文件(根据描述,可能是日志文件或其他包含数据的文件),读取其中的内容,然后将这些数据转换成程序可处理的格式。 如果数据需要在界面上展示,QT提供各种控件如QLabel、QTableView等...

    Spring定时任务轮询本地数据库实现过程解析

    在Spring框架中,定时任务是实现自动化操作的重要功能,它允许开发者在特定时间间隔执行某个任务,例如轮询数据库以检查新数据或执行其他维护工作。本篇文章将深入讲解如何利用Spring来创建一个定时任务,该任务会...

Global site tag (gtag.js) - Google Analytics