crontab笔记
常用的命令
crontab -l
crontab -e 编辑crontab就是VI编辑,其每个任务格式如下:
minute hour day month dayofweek command 命令
minute — 分钟,从 0 到 59 之间的任何整数
hour — 小时,从 0 到 23 之间的任何整数
day — 日期,从 1 到 31 之间的任何整数(如果指定了月份,必须是该月份的有效日期)
month — 月份,从 1 到 12 之间的任何整数(或使用月份的英文简写如 jan、feb 等等)
dayofweek — 星期,从 0 到 7 之间的任何整数,这里的 0 或 7 代表星期日(或使用星期的英文简写如 sun、mon 等等)
在以上任何值中,星号(*)可以用来代表所有有效的值。譬如,月份值中的星号意味着在满足其它制约条件后每月都执行该命令。
整数间的短线(-)指定一个整数范围。譬如,1-4 意味着整数 1、2、3、4。
用逗号(,)隔开的一系列值指定一个列表。譬如,3, 4, 6, 8 标明这四个指定的整数。
几个脚本参:
* 2 * * * /u01/oracle/jobs/crm_timed_bussiness.sh
* 23 * * * /u01/oracle/jobs/crm_timed_bussiness.sh
* * * * * /u01/oracle/jobs/crm_timed_bussiness.sh
crm_timed_bussiness.sh
#setup oracle environment
dd=`date +"%Y%m%d"`
LOG="/u01/oracle/jobs/crm_timed_bussiness.log"
echo `date +'%Y-%m-%d %H:%M:%S`: BEGIN crm_timed_bussiness.sh ............
echo `date +'%Y-%m-%d %H:%M:%S`: BEGIN crm_timed_bussiness.sh ............ >>$LOG 2>&1
NLS_LANG=American_America.zhs16gbk
ORACLE_BASE=/u01/oracle/app/oracle
ORACLE_HOME=/u01/oracle/app/oracle/product/10.2.0/db
PATH=/usr/bin:/etc:/usr/sbin:/usr/ucb:/u01/bin:/usr/bin/X11:/sbin:.:/u01/oracle/app/oracle/product/10.2.0/db/bin:/u01/oracle/app/oracle/product/10.2.0/db/OPatch
export ORACLE_BASE ORACLE_HOME NLS_LANG PATH
/u01/oracle/app/oracle/product/10.2.0/db/bin/sqlplus -s crm/crmkf123@gwkfdb @/u01/oracle/jobs/crm_timed_business.sql >>$LOG 2>&1
echo `date +'%Y-%m-%d %H:%M:%S`: END crm_timed_bussiness.sh ............
echo `date +'%Y-%m-%d %H:%M:%S`: END crm_timed_bussiness.sh ............ >>$LOG 2>&1