写了一个脚本 打算使用crontab进行定时执行。(注意 这个脚本直接执行没有问题)
#!/bin/bash
DAY=$(date +"%Y-%m-%d") #获取今日的日期
HOUR=$(date +"%H") #获取当前小时
MIN=$(date +"%M") #获取当前分钟
SQL=/home/wwwlogs/
############################################
# awk说明
# -F ''
# if -- 将当前小时和时间的数据选择出来
# printf -- 将结果打印成(file1, file2, file3...) 的形式,以便以后输出成sql语句
# > sql.sql -- 输出到sql文件
############################################
touch ${SQL}sql.sql
chmod 777 ${SQL}sql.sql
grep 'oldUser' l.log | awk -F'[|]+|/| |:' '{if ($4 == "'${HOUR}'" && $5=="'${MIN}'") printf"INSERT INTO yl_ng_log VALUES (\"\",\"'${DAY}' %s:%s:%s\",\"%s\",\"%s\");\n", $4,$5,$6,$16,$11}'>${SQL}sql.sql
我在crontab里面
*/1 * * * * sh /home/wwwlogs/yl_ng_log.sh
我们分钟执行一次 但是输出的sql.sql没有内容啊!!!!!!!这是问什么啊 啊啊啊啊
l.log 这个文件需要全路径的吧