Code block

Google Code Prettify + AD Sense

2016年12月14日 星期三

Bash:格式化log內容

統一log訊息前面都加上時間,是不是好用就看個人的習慣
某些程度來說,自己寫的script比較好控制,不然直接用指令 logger 也是挺方便的


#/bin/sh
LOG_FILE=/xxxx/MyLog.log

PipeToMyLog(){
  while IFS= read -r msg; do
  echo -e "`date +%Y/%m/%d\ %H:%N:%S` - $msg" >> $LOG_FILE
done > /dev/stdin
}

FormatMsg(){
  echo -e "`date +%Y/%m/%d\ %H:%N:%S` - $*" >> $LOG_FILE
}

### 以下為使用方式範例
## 使用方式1:透過pipe處理
ls / | PipeToMyLog

## 使用方式2:帶參數方式輸入 - (這種用法比較類似系統內建的logger指令)
FormatMsg "Last status is :$?"

沒有留言:

張貼留言