Linux下 split 划分文件 和 cat 合並文件


split 命令

split 命令可以將一個大文件分割成很多個小文件,有時需要將文件分割成更小的片段,比如為提高可讀性,生成日志等。

選項

-b:值為每一輸出檔案的大小,單位為 byte。
-C:每一輸出檔中,單行的最大 byte 數。
-d:使用數字作為后綴, 作為輸出文件名的后綴。
-l:值為每一輸出檔的列數大小。

實例

生成一個大小為100KB的文件

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

使用split命令將上面創建的data.file分割成大小為10KB的文件

[root@localhost split]# split -b 10k data.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 data.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 data.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 data.file

cat 合並文件

有兩種實現方式,一種是將兩個文件合並輸出一個新的文件,一種是將一個文件追加到另外一個文件后面。

方法一

讀入兩個文件,將兩個文件重定向到新的文件,這種方式可以讀入任意多個文件

$ cat file1.txt file2.txt > file.txt

方法二

使用>>將文本流將文件添加到另外一個文件的末尾

$ cat file1.txt >> file2.txt

參考文獻:http://man.linuxde.net/


免責聲明!

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



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