使用crontab这个命令做定时任务。给一个简单的例子,详细的使用请自行Google。
30 5 * * * /home/executeShell.sh //表示每天5:30执行executeShell.sh这个脚本首先要有一个启动的shell,它是用来让定时任务去调用的,并且记录日志输出日志。executeShell.sh代码如下:
#!/bin/bash DATE=$(date +%Y%m%d) #获取当前时间 SHELL_NAME="shell.sh" #调用另一个shell的名字 echo "begin $SHELL_NAME --------------------"`date`"-----------------------------" >> /home/log/$DATE.log #输出日志并以当前时间为名称 shell_dir="/home/" #要调用的shell的路径 cd $shell_dir #切换到此路径下 sh $SHELL_NAME >> /home/log/$DATE.log #执行下一个shell,打印日志shell.sh这个shell是要操作数据库的关键的脚本:
#!/bin/bash DB2_HOME=/opt/ibm/db2/V10.1 #引入db2的环境路径 PATH=$DB2_HOME/bin:$PATH export $DB2_HOME export $PATH DATANAME="mydate" #数据库名称 DATAUSER="root" #用户名 DATARPASSWD="root" #密码 echo "connect to db2" db2 connect to $DATANAME user $DATAUSER using $DATARPASSWD; db2 "select * from table1" #想要执行的sql