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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM