shell脚本分割文件成相同行数的文件

使用shell脚本将testfile.txt文件(共7800行)分割成13个文件,每个文件600行,文件名的前缀是SplitFile

[root@mx1 /home/sysadmin/zhaoyj]# cat testfile.txt |wc -l
7800


脚本如下:

[root@mx1 /home/sysadmin/zhaoyj]# cat split.sh

#!/bin/sh
linenum=`wc -l testfile.txt |awk '{print $1}'`
Num1=1
FileNum=1
while [ $Num1 -lt $linenum ]
do
Num2=`expr $Num1 + 599`
sed -n "${Num1}, ${Num2}p " testfile.txt > SplitFile$FileNum
Num1=`expr $Num2 + 1`
FileNum=`expr $FileNum + 1`

done


最后生成的文件是

[root@mx1 /home/sysadmin/zhaoyj]# ls |grep '^SplitFile' |wc -l
13

[root@mx1 /home/sysadmin/zhaoyj]# ls |grep '^SplitFile'

SplitFile1
SplitFile10
SplitFile11
SplitFile12
SplitFile13
SplitFile2
SplitFile3
SplitFile4
SplitFile5
SplitFile6
SplitFile7
SplitFile8
SplitFile9


最后再核实一下每个文件的大小是否一致

[root@mx1 /home/sysadmin/zhaoyj]# ls |grep '^SplitFile' |xargs wc -l
600 SplitFile1
600 SplitFile10
600 SplitFile11
600 SplitFile12
600 SplitFile13
600 SplitFile2
600 SplitFile3
600 SplitFile4
600 SplitFile5
600 SplitFile6
600 SplitFile7
600 SplitFile8
600 SplitFile9

7800 total



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值