Linux shell腳本輸出日志筆記整理(必看篇)
更新時(shí)間:2017年03月17日 10:10:51 投稿:jingxian
下面小編就為大家?guī)?lái)一篇Linux shell腳本輸出日志筆記整理(必看篇)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
1、日志方法簡(jiǎn)介:
#日志名稱(chēng)
log="./upgrade.log" #操作日志存放路徑
fsize=2000000 #如果日志大小超過(guò)上限,則保存舊日志,重新生成日志文件
exec 2>>$log #如果執(zhí)行過(guò)程中有錯(cuò)誤信息均輸出到日志文件中
#日志函數(shù)
#參數(shù)
#參數(shù)一,級(jí)別,INFO ,WARN,ERROR
#參數(shù)二,內(nèi)容
#返回值
function zc_log()
{
#判斷格式
if [ 2 -gt $# ]
then
echo "parameter not right in zc_log function" ;
return ;
fi
if [ -e "$log" ]
then
touch $log
fi
#當(dāng)前時(shí)間
local curtime;
curtime=`date +"%Y%m%d%H%M%S"`
#判斷文件大小
local cursize ;
cursize=`cat $log | wc -c` ;
if [ $fsize -lt $cursize ]
then
mv $log $curtime".out"
touch $log ;
fi
#寫(xiě)入文件
echo "$curtime $*" >> $log;
}
2、使用舉例
shell腳本內(nèi)容:
#! /bin/bash
#數(shù)據(jù)庫(kù)變量
localpasswd=xxxx
mysqlhost=xxxx
mysqluser=xxxx
mysqlpasswd=xxxx
#日志名稱(chēng)
log="./upgrade.log" #操作日志存放路徑
fsize=2000000
exec 2>>$log #如果執(zhí)行過(guò)程中有錯(cuò)誤信息均輸出到日志文件中
#日志函數(shù)
#參數(shù)
#參數(shù)一,級(jí)別,INFO ,WARN,ERROR
#參數(shù)二,內(nèi)容
#返回值
function zc_log()
{
#判斷格式
if [ 2 -gt $# ]
then
echo "parameter not right in zc_log function" ;
return ;
fi
if [ -e "$log" ]
then
touch $log
fi
#當(dāng)前時(shí)間
local curtime;
curtime=`date +"%Y%m%d%H%M%S"`
#判斷文件大小
local cursize ;
cursize=`cat $log | wc -c` ;
if [ $fsize -lt $cursize ]
then
mv $log $curtime".out"
touch $log ;
fi
#寫(xiě)入文件
echo "$curtime $*" >> $log;
}
echo "start update shell" ;
mysql -h$sqlip -u$sqluser -p$sqlpasswd -e "use $db;
set names gbk;
--
-- 表的結(jié)構(gòu) msgm_qdjyly
--
DROP TABLE IF EXISTS msgm_qdjyly;
CREATE TABLE IF NOT EXISTS msgm_qdjyly (
jylyid int(11) NOT NULL AUTO_INCREMENT COMMENT '主鍵id',
jylb varchar(20) DEFAULT NULL COMMENT '交易類(lèi)別',
jylbmc varchar(50) DEFAULT NULL COMMENT '交易類(lèi)別名稱(chēng)',
jgm varchar(10) NOT NULL COMMENT '機(jī)構(gòu)碼',
lyfs int(11) NOT NULL COMMENT '路由方式,1指定渠道,2按卡bin渠道',
qdbh varchar(20) DEFAULT NULL COMMENT '渠道編號(hào)',
qdmc varchar(50) DEFAULT NULL COMMENT '渠道名稱(chēng)',
zt int(11) NOT NULL DEFAULT '1' COMMENT '狀態(tài),1正常,2關(guān)閉',
bz varchar(100) DEFAULT NULL COMMENT '備注',
PRIMARY KEY (jylyid)
) ENGINE=InnoDB DEFAULT CHARSET=gbk COMMENT='交易路由信息' AUTO_INCREMENT=7 ;
zc_log INFO "執(zhí)行 CREATE TABLE msgm_qdjyly 命令的結(jié)果為 : $? " ;
echo "執(zhí)行 CREATE TABLE msgm_qdjyly 命令的結(jié)果為 : $? " ;
以上這篇Linux shell腳本輸出日志筆記整理(必看篇)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:
相關(guān)文章
Shell腳本實(shí)現(xiàn)監(jiān)控iptables規(guī)則是否被修改
這篇文章主要介紹了Shell腳本實(shí)現(xiàn)監(jiān)控iptables規(guī)則是否被修改,本文直接給出實(shí)現(xiàn)代碼,需要的朋友可以參考下2014-12-12
linux crontab 實(shí)現(xiàn)每秒執(zhí)行的實(shí)例
下面小編就為大家?guī)?lái)一篇linux crontab 實(shí)現(xiàn)每秒執(zhí)行的實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-04-04
Linux shell腳本全面學(xué)習(xí)入門(mén)
這篇文章主要為大家分享下Linux shell腳本相關(guān)的資料,對(duì)于linux系統(tǒng)中,shell腳本非常實(shí)用并強(qiáng)大2013-10-10
shell腳本實(shí)現(xiàn)實(shí)時(shí)檢測(cè)文件變更
這篇文章主要介紹了shell腳本實(shí)現(xiàn)實(shí)時(shí)檢測(cè)文件變更,本文直接給出實(shí)現(xiàn)代碼和使用方法,以及svn下的實(shí)現(xiàn)代碼,需要的朋友可以參考下2015-05-05

