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 传递参数
    && 前面脚本执行成功后执行后面的脚本

  • 相关阅读:
    八月二十九学习报告
    文本操作
    EL表达式
    注解开发
    逆向
    内置对象和方法
    每日日报2020.11.10 1905
    每日日报2020.11.12 1905
    每日日报2020.11.17 1905
    每日日报2020.11.20 1905
  • 原文地址:https://www.cnblogs.com/everfight/p/shell.html
Copyright © 2011-2022 走看看