ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 2011-08-02

2011-08-02

原创 Linux操作系统 作者:ansir_itpub 时间:2011-08-02 15:41:10 0 删除 编辑

利用shell脚本对大文件进行分割

  有系统运维的过程中,日志文件往往非常大,这样就要求对日志文件进行分割,在此特用shell脚本对文件进行分割

 
方法一:
 #!/bin/bash  
   
  linenum=`wc   -l   httperr8007.log|   awk   '{print   $1}'`  
  n1=1  
  file=1  
  while   [   $n1   -lt   $linenum   ]  
  do  
                  n2=`expr   $n1   +   999`  
                  sed   -n   "${n1},   ${n2}p"   httperr8007.log >   file_$file.log    
                  n1=`expr   $n2   +   1`  
                  file=`expr   $file   +   1`  
  done  
 
 其中httperr8007.log为你想分割的大文件,file_$file.log  为分割后的文件,最后为file_1.log,file_2.log,file_3.log……,分割完后的每个文件只有1000行(参数可以自己设置)
 
方法二:
split 参数:
-b  :后面可接欲分割成的档案大小,可加单位,例如 b, k, m 等;
-l  :以行数来进行分割;
 
#按每个文件1000行来分割除
split -l 1000 httperr8007.log httperr
 
httpaa,httpab,httpac ........
 
#按照每个文件100K来分割
split -b 100k httperr8007.log http
 
httpaa,httpab,httpac ........
 
 
 
while [ 1 ]
do
df -h |grep /home
sleep 2
echo ----------------------------------------------
done
 
 
谋定而后动!

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25951437/viewspace-703850/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 20-07-2011
下一篇: 04-08-2011
请登录后发表评论 登录
全部评论

注册时间:2011-06-17

  • 博文量
    43
  • 访问量
    17047