Linux:split命令詳解
split
可以將一個大文件分割成很多個小文件,有時需要將文件分割成更小的片段,比如為提高可讀性,生成日志
語法
split(選項)(file)PREFIX
選項
-b:值為每一輸出檔案的大小,單位為 byte。 -C:每一輸出檔中,單行的最大 byte 數。 -d:使用數字作為后綴。 -l:值為每一輸出檔的列數大小。
PREFIX:代表前導符,可作為切割文件的前導文件。
實例
生成一個大小為100KB的測試文件:
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的小文件:
split -b 10k date.file ls 結果: date.file xaa xab xac xad xae xaf xag xah xai xaj
文件被分割成多個帶有字母的后綴文件,如果想用數字后綴可使用-d參數,同時可以使用-a length來指定后綴的長度:
split -b 10k date.file -d -a 3 ls 結果: date.file x000 x001 x002 x003 x004 x005 x006 x007 x008 x009
為分割后的文件指定文件名的前綴:
split -b 10k date.file -d -a 3 split_file 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
PS
cat x*>>y*
將split分割的文件合並成一個