中国黑防联盟

Linux通过shell脚本将txt大文件切割成小文件的方法

中国黑防联盟 电脑使用教程 2024-04-28 21:12:24 0
  Linux系统下,有些txt文件比较大,转移到移动设备非常不方便,那么能不能将txt大文件变成多个小文件呢?其实可通过shell脚本实现,下面小编就给大家介绍下Linux通过shell脚本切割txt大文件的方法。 Linux通过shell脚本将txt大文件切割成小文件的方法   解决方法:   1. 先使用split命令切割大文件,每个小文件保存100万行   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 。。。。。。。。   2. 遍历所有100万行文件,逐个新建目录再切割成1万行小文件   #!/bin/bash   bigfile=“1.txt”   split -l 1000000 $bigfile text   currdir=1   for smallfile in `ls | grep “text*”`   do   linenum=`wc -l $smallfile | awk ‘{print $1}’`   n1=1   file=1   savedir=“$smallfile$currdir”   if [ ! -d “$savedir” ]   then   mkdir $savedir   fi   while [ $n1 -lt $linenum ]   do   n2=`expr $n1 + 9999`   sed -n “${n1},${n2}p” $smallfile 》 $savedir/text$file.txt   n1=`expr $n2 + 1`   file=`expr $file + 1`   done   currdir=`expr $currdir + 1`   done   上面就是Linux使用shell脚本将txt大文件切割成小文件的方法介绍了,txt文件太大的话可使用本文的方法进行切割处理。