主頁(yè) > 知識(shí)庫(kù) > 輸出執(zhí)行操作和打印日志的shell腳本實(shí)例

輸出執(zhí)行操作和打印日志的shell腳本實(shí)例

熱門(mén)標(biāo)簽:益陽(yáng)400電話申請(qǐng)辦理流程 江西全自動(dòng)外呼系統(tǒng)報(bào)價(jià) 上海機(jī)器人外呼系統(tǒng)哪家好 昆明電銷機(jī)器人價(jià)格 春運(yùn)地圖標(biāo)注app 400的電話一般從哪里辦理 梧州防封電銷卡 怎么用百度地圖標(biāo)注坐標(biāo) 地圖標(biāo)注人員分布
cat /mnt/log_function.sh 
#!/bin/bash 
#log function

####log_correct函數(shù)打印正確的輸出到日志文件 
function log_correct () { 
DATE=`date “+%Y-%m-%d %H:%M:%S”` ####顯示打印日志的時(shí)間 
USER=$(whoami) ####那個(gè)用戶在操作 

echo “${DATE} ${USER} execute $0 [INFO] $@” >>/var/log/log_info.log ######($0腳本本身,$@將參數(shù)作為整體傳輸調(diào)用) 
}

log_error打印shell腳本中錯(cuò)誤的輸出到日志文件

function log_error () 
{ 
DATE=`date “+%Y-%m-%d %H:%M:%S”` 
USER=$(whoami) 
echo “\${DATE} \${USER} execute \$0 [INFO] \$@” >>/var/log/log_error.log 
}

###fn_log函數(shù) 通過(guò)if判斷執(zhí)行命令的操作是否正確,并打印出相應(yīng)的操作輸出

function fn_log () 
{ 
if [ $? -eq 0 ] 
then 
log_correct “$@ sucessed!” 
echo -e “\033[32m $@ sucessed. \033[0m” 
else 
log_error “$@ failed!” 
echo -e “\033[41;37m $@ failed. \033[0m” 
exit 
fi 
}

知識(shí)點(diǎn):

(1) $?判斷執(zhí)行命令的返回值,命令執(zhí)行正確返回0,命令執(zhí)行錯(cuò)誤返回1

(2)”$@” 將執(zhí)行命令 以一個(gè)參數(shù)的形式顯示出來(lái)。

(3)echo -e “\033[32m $@ sucessed. \033[0m” 成功時(shí)以紅色形式顯示執(zhí)行命令的內(nèi)容。

(4) echo -e “\033[41;37m $@ failed. \033[0m” 失敗時(shí)以綠色的形式顯示執(zhí)行命令的內(nèi)容

(5)date “+%Y-%m-%d %H:%M:%S” 顯示詳細(xì)的日志時(shí)間(年月日時(shí)分秒)

調(diào)用日志函數(shù)腳本的執(zhí)行腳本(log_correct log_error fn_log)

vi log_exec.sh 
#!/bin/sh 
if [ -e /mnt/log_function.sh ] 
then 
source /mnt/log_function.sh 
else 
echo -e “\033[41;37m /mnt/log_function.sh is not exist. \033[0m” 
exit 1 
fi

USER=`whoami` 
if [ $USER == root ] 
then 
log_correct “execute by root” 
else 
log_error “execute by ${USER}” 
echo -e “\033[41;37m you must execute this scritp by root. \033[0m” 
exit 1 
fi

if [ -e /var/log/message ] 
then 
echo 0 > /var/log/message 
fn_log “echo 0 > /var/log/message” 
fi

以上這篇輸出執(zhí)行操作和打印日志的shell腳本實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • shell腳本實(shí)現(xiàn)分日志級(jí)別輸出的方法
  • shell將腳本輸出結(jié)果記錄到日志文件的實(shí)現(xiàn)
  • Linux shell腳本輸出日志筆記整理(必看篇)

標(biāo)簽:懷化 惠州 新疆 九江 亳州 河南 北京 贛州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《輸出執(zhí)行操作和打印日志的shell腳本實(shí)例》,本文關(guān)鍵詞  輸出,執(zhí)行,操作,和,打印,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《輸出執(zhí)行操作和打印日志的shell腳本實(shí)例》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于輸出執(zhí)行操作和打印日志的shell腳本實(shí)例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章