zoukankan      html  css  js  c++  java
  • 一段shell脚本分析

    工作中碰到这样的需求:
    1、每天定时要执行python脚本生成excel
    2、将生成的excel拷贝到特定目录下
    3、通过python发送脚本发送给特定的接收者

    因为之前没有接触过shell脚本,同事帮忙写了一份,具体内容如下。

    #!/bin/bash                                                                      
                                                                                     
    . ~/.bash_profile                                                                
    . ~/virtualenv/bin/activate                                                      
                                                                                     
    dt=`date +'%Y-%m-%d'`                                                            
    day=`date +'%Y%m%d'`                                                             
                                                                                     
    cd virtualenv/report                                                             
    python main.py --table 催收DL $dt                                                
    python main.py --table 催收DR $dt                                                
    python main.py --table 催收DZ-BH $dt                                             
    python main.py --table 催收DZ-SS $dt                                             
    python main.py --table 催收DZ-TL $dt                                             
    python main.py --table 催收HW $dt                                                
    python main.py --table 催收SH $dt                                                
    python main.py --table 催收XC $dt                                                
    python main.py --table 催收YFT $dt                                               
    python main.py --table 催收ZC $dt                                                
                                                                                     
    cp excel/催收*$day* ~/virtualenv/report/sendxls/ && python cui_mail.py $dt 
    

    基本思路:
    定时器用crontab进行设定,定时执行脚本,并将输出存到日志。

    3 12,14,16,18,23 * * * /home/report/virtualenv/report/cuishou.sh >> /home/report/log.log 2>&1
    

    昨天分析过了crontab的格式,上面表示每天的12:03,14:03,16:03,18:03,23:03定制执行cuishou.sh脚本和写入日志。

    下面就结合脚本分析下shell的常见知识点。
    . 执行脚本所需要的环境
    ` 优先执行
    date +'%Y-%m-%d' 日期格式转换
    date +'%Y%m%d 日期格式转换
    $dt 传递参数
    && 前面脚本执行成功后执行后面的脚本

  • 相关阅读:
    记一次简单的SQL优化
    JAVA 根据数据库表内容生产树结构JSON数据
    Maven 整合FreeMarker使用
    JAVA FreeMarker工具类
    JAVA 分页工具类及其使用
    JAVA 日期格式工具类DateUtil.java
    JAVA 读写Excel
    简单Linux命令学习笔记
    WEB安全隐患
    metasploit 连接database相关问题
  • 原文地址:https://www.cnblogs.com/everfight/p/shell.html
Copyright © 2011-2022 走看看