一段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 传递参数
&& 前面脚本执行成功后执行后面的脚本
一段shell脚本分析的更多相关文章
- shell脚本分析nginx日志
shell脚本分析nginx日志: name=`awk -F ',' '{print $13":"$32}' $file | awk -F ':' '{print $4}'`ech ...
- shell脚本分析 nginx日志访问次数最多及最耗时的页面
当服务器压力比较大,跑起来很费力时候.我们经常做站点页面优化,会去查找那些页面访问次数比较多,而且比较费时. 找到那些访问次数高,并且比较耗时的地址,就行相关优化,会取得立竿见影的效果的. 下面是我在 ...
- 使用shell脚本分析Nagios的status.dat文件
前言 Nagios的安装和配置以及批量添加监控服务器在我前面的文章中已经讲的很详细了. 我们知道,Nagios的网页控制页面(一般为http://nagio.domain.com/nagios)里可以 ...
- Hadoop的shell脚本分析
你会发现hadoop-daemon.sh用于启动单独的本机节点 而hadoop-daemons.sh 会批量的ssh到别的机器启动 前记: 这些天一直学习hadoop,学习中也遇到了许多的问题,主要是 ...
- shell脚本分析一
Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁.Shell 既是一种命令语言,又是一种程序设计语言.Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界 ...
- Shell脚本分析服务器性能
概述 我们原先在服务器上想分析性能指标,需要执行一系列的linux命令.对于linux命令不熟悉的人来说,比较困难 现在有一套集成的shell脚本,把常用的linux命令都包含在里面,一键式分析性能瓶 ...
- Hadoop1.2.1 启停的Shell 脚本分析
停止shell脚本以此类推.
- 如何用shell脚本分析网站日志统计PV、404、500等数据
以下shell脚本能统计出网站的总访问量,以及404,500出现的次数.统计出来后,可以结合监控宝来进行记录,进而可以看出网站访问量是否异常,是否存在攻击.还可以根据查看500出现的次数,进而判断网站 ...
- 统计网卡流量的两段shell脚本(使用ifconfig)
一个很小巧的shell脚本,使用ifconfig的不间断输出来统计网卡的流量,有需要的朋友可以参考下 使用shell脚本计算Linux网卡流量,方法中最关键点: ifconfig $eth_name ...
随机推荐
- MySql基础总结
1.创建一个表 CREATE TABLE customers ( cust_id INT NOT NULL AUTO_INCREMENT, cust_name CHAR(50) NOT NULL , ...
- 数据库、ArcCatalog空间数据源正常访问,数据库设置没问题时,ArcEngine连接SDE时报"ORA-12560: TNS: 协议适配器错误"的解决办法;ArcEngine连接SDE总结
碰到的问题描述: 通过C# 基于ArcEngine写SDE直连的时候测试项目连接属性设置为如下: tPropSet.SetProperty("User", "GISDAT ...
- go实例之轻量级线程goroutine、通道channel与select
1.goroutine线程 goroutine是一个轻量级的执行线程.假设有一个函数调用f(s),要在goroutine中调用此函数,请使用go f(s). 这个新的goroutine将与调用同时执行 ...
- iOS学习——iOS常用的存储方式
不管是在iOS还是Android开发过程中,我们都经常性地需要存储一些状态和数据,比如用户对于App的相关设置.需要在本地缓存的数据等等.根据要存储的的数据的大小.存储性质以及存储类型,在iOS和An ...
- js scrollTop 事件
代码: window.onscroll = function() { var t = document.documentElement.scrollTop || document.body.scrol ...
- Redis分布式集群搭建
Redis集群架构图 上图蓝色为redis集群的节点. 节点之间通过ping命令来测试连接是否正常,节点之间没有主区分,连接到任何一个节点进行操作时,都可能会转发到其他节点. 1.Redis的容错机制 ...
- deepin系统下安装git
1.打开命令行 2.输入 sudo apt-get update sudo apt-get install git 3.显示 建议安装: git-daemon-run | git-daemon-sys ...
- 伽罗瓦域(有限域)GFq^12上元素的1→2→4→12塔式扩张(2)------第二次扩张
接上文https://www.cnblogs.com/heshuchao/p/8196307.html 继续探讨塔式扩张的第二部分,即1→2→4→12中2 → 4的元素扩张表示方式与计算公式推导. 3 ...
- MySQL查询相关(初级)(全文重点)
where 是约束条件 先找到表 from t1 where 条件 : 指的是把表里的数据,一条一条的记录取出来 然后 group by 分组, having 是过滤条件 指记录已经出来 聚合 cou ...
- robotframework的学习笔记(十六)----robotframework标准库String
官方文档:http://robotframework.org/robotframework/latest/libraries/String.html Introduction A test libra ...