Linux shell脚本输出日志笔记整理(必看篇)
1、日志方法简介:
#日志名称
log="./upgrade.log"#操作日志存放路径
fsize=2000000#如果日志大小超过上限,则保存旧日志,重新生成日志文件
exec2>>$log#如果执行过程中有错误信息均输出到日志文件中
#日志函数
#参数
#参数一,级别,INFO,WARN,ERROR
#参数二,内容
#返回值
functionzc_log()
{
#判断格式
if[2-gt$#]
then
echo"parameternotrightinzc_logfunction";
return;
fi
if[-e"$log"]
then
touch$log
fi
#当前时间
localcurtime;
curtime=`date+"%Y%m%d%H%M%S"`
#判断文件大小
localcursize;
cursize=`cat$log|wc-c`;
if[$fsize-lt$cursize]
then
mv$log$curtime".out"
touch$log;
fi
#写入文件
echo"$curtime$*">>$log;
}
2、使用举例
shell脚本内容:
#!/bin/bash
#数据库变量
localpasswd=xxxx
mysqlhost=xxxx
mysqluser=xxxx
mysqlpasswd=xxxx
#日志名称
log="./upgrade.log"#操作日志存放路径
fsize=2000000
exec2>>$log#如果执行过程中有错误信息均输出到日志文件中
#日志函数
#参数
#参数一,级别,INFO,WARN,ERROR
#参数二,内容
#返回值
functionzc_log()
{
#判断格式
if[2-gt$#]
then
echo"parameternotrightinzc_logfunction";
return;
fi
if[-e"$log"]
then
touch$log
fi
#当前时间
localcurtime;
curtime=`date+"%Y%m%d%H%M%S"`
#判断文件大小
localcursize;
cursize=`cat$log|wc-c`;
if[$fsize-lt$cursize]
then
mv$log$curtime".out"
touch$log;
fi
#写入文件
echo"$curtime$*">>$log;
}
echo"startupdateshell";
mysql-h$sqlip-u$sqluser-p$sqlpasswd-e"use$db;
setnamesgbk;
--
--表的结构msgm_qdjyly
--
DROPTABLEIFEXISTSmsgm_qdjyly;
CREATETABLEIFNOTEXISTSmsgm_qdjyly(
jylyidint(11)NOTNULLAUTO_INCREMENTCOMMENT'主键id',
jylbvarchar(20)DEFAULTNULLCOMMENT'交易类别',
jylbmcvarchar(50)DEFAULTNULLCOMMENT'交易类别名称',
jgmvarchar(10)NOTNULLCOMMENT'机构码',
lyfsint(11)NOTNULLCOMMENT'路由方式,1指定渠道,2按卡bin渠道',
qdbhvarchar(20)DEFAULTNULLCOMMENT'渠道编号',
qdmcvarchar(50)DEFAULTNULLCOMMENT'渠道名称',
ztint(11)NOTNULLDEFAULT'1'COMMENT'状态,1正常,2关闭',
bzvarchar(100)DEFAULTNULLCOMMENT'备注',
PRIMARYKEY(jylyid)
)ENGINE=InnoDBDEFAULTCHARSET=gbkCOMMENT='交易路由信息'AUTO_INCREMENT=7;
zc_logINFO"执行CREATETABLEmsgm_qdjyly命令的结果为:$?";
echo"执行CREATETABLEmsgm_qdjyly命令的结果为:$?";
以上这篇Linuxshell脚本输出日志笔记整理(必看篇)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。