shell: logging + readlog

  • logging
#!/bin/bash                                                                                                                                                                                                                                                                               
                                                                                                                                                                                                                                                                                          
# a small tool for logging sommething                                                                                                                                                                                                                                                     
#                                                                                                                                                                                                                                                                                         
# 1. read your input                                                                                                                                                                                                                                                                      
# 2. save to logs file >> ~/logs/$(date +%F)                                                                                                                                                                                                                                              
#                                                                                                                                                                                                                                                                                         
# if command like: logging something                                                                                                                                                                                                                                                      
#   do echo something >> ~/logs/$(date +%F)                                                                                                                                                                                                                                               
                                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                                          
cd ${HOME} || {                                                                                                                                                                                                                                                                           
        echo "no HOME variable!"                                                                                                                                                                                                                                                          
        exit                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       
}                                                                                                                                                                                                                                                                                         
                                                                                                                                                                                                                                                                                          
mkdir -p .logs                                                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                                                                          
logDir='.logs'                                                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                                                                          
if [ $# -gt 0 ] ; then                                                                                                                                                                                                                                                                    
    echo "$(date +%T) $@" >> $logDir/$(date +%F)                                                                                                                                                                                                                                          
else                                                                                                                                                                                                                                                                                      
    read -p "好记性不如烂笔头,please input info: " info                                                                                                                                                                                                                                  
    echo "$(date +%T)" $info >> $logDir/$(date +%F)                                                                                                                                                                                                                                       
fi                                                                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                                                                          
## if faild, output                                                                                                                                                                                                                                                                       
[ $? -eq 0 ] || echo "logging failed" 

  • readlog
#!/bin/bash                                                                                                                                 
                                                                                                                                            
[ $# -gt 1 ] && {                                                                                                                           
    echo "usage: $0 [-1]"                                                                                                                   
    exit                                                                                                                                    
}                                                                                                                                           
                                                                                                                                            
if [ $# -eq 0 ] ; then                                                                                                                      
    date_file=$(date +%F)                                                                                                                   
else                                                                                                                                        
    date_file=$(date +%F --date="$1 day")                                                                                                   
fi                                                                                                                                          
                                                                                                                                            
vim ${HOME}/.logs/$date_file
posted @ 2022-11-09 10:45  武平宁  阅读(34)  评论(0)    收藏  举报