羣總結的一些有可能用的上的

1.想在df -h 前面加個時間列?

 

  1. df -h  | sed 's/^/ \t \t /g' | sed '1s/^ \t /datetime/' | \
  2. sed  "2,$ s/^ \t /`date +%Y-%m-%d`/" 

也可以有比較複雜的方式:

 

  1. vi test.sh 
  2. ############################# 
  3. #!/bin/bash 
  4.  
  5. dat=`date +'%Y-%m-%d-%H-%M-%S'
  6. ipaddr=`ifconfig eth0|grep 'inet addr'|awk -F '[ :]' '{print $13}'
  7. hostname=`hostname` 
  8. df -h | grep '^\/dev'
  9. while read line 
  10. do 
  11.         echo $dat $hostname $ipaddr $line 
  12. done 
  13. ############################# 
  14.  
  15. chmod +x test.sh 

補充一種方法,使用的awk+shell外部變量:

 

  1. var=`date +%Y-%m-%d` ; 
  2. df -Th |awk -v awk_var="$var" 'BEGIN {time="日期時間"}; \
  3. NR==1 {print time"\t",$0}; NR!=1 { print awk_var"\t",$0}' 

或者直接在awk裏面使用shell命令的方式:

  1. df -Th |awk  'BEGIN {time="日期時間";"date +%Y-%d-%m"|getline var;}; \
  2. NR==1 {print time"\t",$0}; NR!=1 { print var"\t",$0}' 

 

 

  1. df -Th |awk  ' NR==1 {print var1"\t",$0}; NR!=1 { print var2"\t",$0}' var2=`date +%Y-%m-%d` var1="日期時間" 

效果一樣。

 

 參考:http://cs2011.blog.51cto.com/2281851/527190

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章