Linux培训教程 linux系统下分割大文件的方法
在linux中分割大文件,比如一个5gb日志文件,需要把它分成多个小文件,分割后以利于普通的文本编辑器读取。
有时,需要传输20gb的大文件,Linux培训
教程件到另一台服务器,也需要把它分割成多个文件,这样便于传输数据。
以下通过五个不同的例子,来讲解Linux下分割大文件的方法,供大家参考。
例1、以每个文件1000行分割
split命令分割文件成每个文件1000行,并且文件名依次为[前缀]aa,[前缀]ab,[前缀]ac等,默认的前缀是X,每个文件的行数为1000行。
命令:
复制代码代码如下:
$splitmylog-l1000
$wc-l*
4450mylog
1000xaa
1000xab
1000xac
1000xad
450xae
例2、以每个文件20MB分割
分割文件为多个20MB的文件,附带-b选项。
命令:
复制代码代码如下:
$split-b20Mlogdata
$ls-lh|tail-n+2
-rw-------1sathiyasathiya102MJul2518:47logdata
-rw-------1sathiyasathiya20MJul2519:20xaa
-rw-------1sathiyasathiya20MJul2519:20xab
-rw-------1sathiyasathiya20MJul2519:20xac
-rw-------1sathiyasathiya20MJul2519:20xad
-rw-------1sathiyasathiya20MJul2519:20xae
-rw-------1sathiyasathiya1.6MJul2519:20xaf
例3、以每个文件50MB指定前缀分割
使用–bytes选项把文件分割成多个50MB的文件,–bytes类似-b选项,在第二个参数指定前缀。
命令:
复制代码代码如下:
$split--bytes=50Mlogdatamydatafile
$ls-lh
total204M
-rw-------1sathiyasathiya102MJul2518:47logdata
-rw-------1sathiyasathiya50MJul2519:23mydatafileaa
-rw-------1sathiyasathiya50MJul2519:23mydatafileab
-rw-------1sathiyasathiya1.6MJul2519:23mydatafileac
例4、基于行数分割文件
使用-l选项指定行数来把文件分割成多个行数相同的文件。
命令:
复制代码代码如下:
$wc-ltestfile
2591testfile
$split-l1500testfileimportantlog
$wc-l*
1500importantlogaa
1091importantlogab
2591testfile
例5、以数字后缀命名分割文件
使用-d选项可以指定后缀为数字,如00,01,02..,而不是aa,ab,ac。
命令:
复制代码代码如下:
$split-dtestfile
$ls
testfilex00x01x02
可用选项
复制代码代码如下:
短选项长选项选项描述
-b–bytes=SIZESIZE值为每一输出档案的大小,单位为byte。
-C–line-bytes=SIZE每一输出档中,单行的最大byte数。
-d–numeric-suffixes使用数字作为后缀。
-l–lines=NUMBERNUMBER值为每一输出档的列数大小。</p><p>短选项长选项选项描述
-b–bytes=SIZESIZE值为每一输出档案的大小,单位为byte。
-C–line-bytes=SIZE每一输出档中,单行的最大byte数。
-d–numeric-suffixes使用数字作为后缀。
-l–lines=NUMBERNUMBER值为每一输出档的列数大小。