split命令详解

  

基础命令学习目录首页

原文链接:https://blog.csdn.net/lkforce/article/details/71547313

Linux中的文件,特别是日志文件,特别大了不好打开,可以用split命令来切割成小文件

split命令有两种方式:

1,指定行数来切割

split -l 300 log.txt newfile

每个文件300行

2,指定文件大小来切割

split -b 500m log.txt newfile

每个文件大小500m,生成的新文件的文件名是newfile后面加上按照aa,ab,ac……来排序的

比如log.txt文件有1.4G,那么会切割出3个文件,文件名分别是newfileaa,newfileab,newfileac,没有扩展名

新文件名可以不设置,系统默认新文件以字母x开头,也就是说,如果命令是:

split -b 500m log.txt

那么文件名就是xaa,xab,axc

我自己试了一下,3个G的文件,按500M切割,基本秒出,速度比windows下的那些什么切割软件快太多了


另外切开的文件还能再合起来,命令是:

cat newfile* > orifile

原文链接:http://man.linuxde.net/split

生成一个大小为100KB的测试文件:

[root@localhost split]# dd if=/dev/zero bs=100k count=1 of=date.file
1+0 records in
1+0 records out
102400 bytes (102 kB) copied, 0.00043 seconds, 238 MB/s

使用split命令将上面创建的date.file文件分割成大小为10KB的小文件:

[root@localhost split]# split -b 10k date.file 
[root@localhost split]# ls
date.file  xaa  xab  xac  xad  xae  xaf  xag  xah  xai  xaj

文件被分割成多个带有字母的后缀文件,如果想用数字后缀可使用-d参数,同时可以使用-a length来指定后缀的长度:

[root@localhost split]# split -b 10k date.file -d -a 3
[root@localhost split]# ls
date.file  x000  x001  x002  x003  x004  x005  x006  x007  x008  x009

为分割后的文件指定文件名的前缀:

[root@localhost split]# split -b 10k date.file -d -a 3 split_file
[root@localhost split]# ls
date.file  split_file000  split_file001  split_file002  split_file003  split_file004  split_file005  split_file006  split_file007  split_file008  split_file009

使用-l选项根据文件的行数来分割文件,例如把文件分割成每个包含10行的小文件:

split -l 10 date.file
原文地址:https://www.cnblogs.com/machangwei-8/p/9570866.html