linux split命令拆分合并文件

split :可以将一个大文件分割成多个小文件,有时候需要将问卷分割成更小的片段,比如提高可读性,生成日志。

 

语法: split [OPTION]... [INPUT [PREFIX]]


Output fixed-size pieces of INPUT to PREFIXaa, PREFIXab, ...; defaul
size is 1000 lines, and default PREFIX is `x'. With no INPUT, or when INPUT
is -, read standard input.

 

选项(options)
-b:选项后跟期望切割后的单个文件的大小,单位k或者m
eg. split -b 1024m test.txt //将test.txt按照每1024m切割为一个小文件
-l:选项后跟期望切割后单个文件的行数,直接写数字
eg. split -l 1000 test.txt //将test.txt按照每1000行切割为一个小文件
-C:与选项-b相似,但是在切割时将尽量维持每行的完整性

-d:使用数字作为后缀
-a:配合选项-d,指定后缀长度
eg. split -b 10k test.txt -d -a 3 split_file
结果:test.txt split_file000 split_file001 split_file002 ...

 

说明:

如果不指定拆分后的文件名,也不指定使用数字作为后缀,默认情况下如下

[root@localhost split]# split -b 1024m test.txt 
[root@localhost split]# ls
test.txt xaa xab xac xad xae xaf xag xah xai xaj ...

 

如果指定以数字作为后缀但是不指定拆分后的文件名,默认是以x为开头,如下

[root@localhost split]# split -b 1024m test.txt -d -a 2
[root@localhost split]# ls
test.txt x00 x01 x02 x03 x04 x05 x06 x07 x08 x09 ...

 

如果指定拆分后的文件名,并且指定以数字为后缀,如下

[root@localhost split]# split -b 1024m txst.txt -d -a 2 test.txt_
[root@localhost split]# ls
`txst.txt txst.txt_00 txst.txt_01 txst.txt_02 txst.txt_03 txst.txt_04 ...

 

 

合并:

cat 分割的文件名 > 合并后的文件名

$ cat a.txt 

a
b
c
d

$ split -l 1 a.txt

$ ls
a.txt xaa xab xac xad

$ cat x*>HE.txt

$ cat HE.txt 
a
b
c
d

 

posted @ 2019-07-26 11:33  augusite  阅读(5705)  评论(0编辑  收藏  举报