`
zengshaotao
  • 浏览: 792371 次
  • 性别: 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 完全模拟过程,软件即可完成

    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来创建一个定时任务,该任务会...

    智能判断多台设备局域网内通断情况、实现局域网内自动拷贝文件

    在IT领域,尤其是在网络管理和自动化任务执行中,智能判断设备的局域网内通断情况以及实现局域网内自动拷贝文件是非常实用的技术。这些功能可以极大地提高工作效率,减少手动操作的繁琐和错误率。以下是对这两个核心...

Global site tag (gtag.js) - Google Analytics