当前位置:七道奇文章资讯安全技术网络技术
日期:2011-09-13 12:41:00  来源:本站整理

循环FTP脚本的同享及其阐明分享[网络技术]

赞助商链接



  本文“循环FTP脚本的同享及其阐明分享[网络技术]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

脚本为本人工作所写,作为shell初学者,可以一同学习下
第1行为脚本第一行,当运行脚本时奉告系统挑选哪一个shell,若没有第一行,系统会挑选默许的shell
1           #!/bin/sh
    第2-9行考证参数,若参数个数不为1,则报错
2       #考证参数个数
3       if [ $# -ne 1 ]
4       then
5               echo "Param error !"
6               echo "Usage: $0 date"
7               echo "Example: $0 20110808"
8               exit 1
9       fi
10  
11     #调度日期
第12-14行,定义变量
12     etl_date=$1
13  
14     ok=`echo ${etl_date}|grep -w "20[0-9][0-9][0-9][0-9][0-9][0-9]"|wc -l`
第15-22行考证参数格局,若格局不为20xxxxxx,则报错
15     #考证参数格局
16     if [ ${ok} -eq 0 ]
17     then
18          echo "Param error !"
19          echo "Usage: $0 date"
20          echo "Example: $0 20110808"
21          exit 1
22     fi
23  
第24-26行定义变量
24     sub1=`echo ${etl_date} | cut -c 1-4`
25     sub2=`echo ${etl_date} | cut -c 5-6`
26     sub3=`echo ${etl_date} | cut -c 7-8`
27  
第29行从配置文件ftp.cfg中读取全部的系统名称
28     #获得全部的系统
29     system_all=` awk -F= '{ if ( $1~/system_name/ ) print $ 2}' /home/edw/cjb/bin/ftp/ftp_get.cfg `
30  
31     #获得系统个数
第32行对方才读取的系统名称举行统计个数,个数为system_num
32     system_num=`echo ${system_all} | awk -F+ '{print NF}'`
33  
34     echo "当前有[${system_all}]${system_num}个系统"
35  
第37行,对num阐明一下,用num从1增长到system_num来履行一个循环,假如不用num,也可以用shift移动变量来完成
36     #循环履行帮助参数
37     num=1
38  
39     #按照系统个数${system_num},履行${system_name}次循环
40     while [ ${num} -le ${system_num} ]
41     do
42      sys_name=`echo ${system_all} | awk -F+ '{print $'$num'}'`
43      echo "第${num}个系统为${sys_name}"
第44-48行,从配置文件ftp_get.cfg中读取ftp的ip地址,用户名,密码,远程/本地途径
44      remote_ip=` awk -F= ' { if ( $1~/'${sys_name}'_ADD/ ) print $2 } ' /home/edw/cjb/bin/ftp/ftp_get.cfg `
45      user_name=` awk -F= ' { if ( $1~/'${sys_name}'_USR/ ) print $2 } ' /home/edw/cjb/bin/ftp/ftp_get.cfg `
46      pass_word=` awk -F= ' { if ( $1~/'${sys_name}'_PWD/ ) print $2 } ' /home/edw/cjb/bin/ftp/ftp_get.cfg `
47      rmt_dir=` awk -F= ' { if ( $1~/'${sys_name}'_REMOTEDIR/ ) print $2 }' /home/edw/cjb/bin/ftp/ftp_get.cfg `
48      loc_dir=` awk -F= ' { if ( $1~/'${sys_name}'_LOCALDIR/ ) print $2 }' /home/edw/cjb/bin/ftp/ftp_get.cfg `
49    
50      #参数二次解析
第51行操纵eval对rmt_dir举行二次解析,rmt_dir从ftp_get.cfg读取后仍旧包含参数,需求举行第二次解析,然后赋值给remote_dir,第54行同理
51      remote_dir=`eval echo ${rmt_dir}`
52      echo "remote_dir is ${remote_dir}"
53      #参数二次解析
54      local_dir=`eval echo ${loc_dir}`
55      echo "local_dir is ${local_dir}"
56    
57      #若本地途径不存在,则自动成立
58      [ -d ${local_dir} ]||mkdir -p ${local_dir}

[1] [2]  下一页


  以上是“循环FTP脚本的同享及其阐明分享[网络技术]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • 循环FTP脚本的同享及其阐明分享
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .