csplit(context split)
功能說明:分割文件。
Split:按指定的行數截斷文件
格式: split [-n] file [name]
參數說明:
-n: 指定截斷的每一文件的長度,不指定缺省為1000行
file: 要截斷的文件
name: 截斷後產生的文件的文件名的開頭字母,不指定,缺省為x,即截斷後產生的文件的文件名為xaa,xab....直到xzz
例一:
split -55 myfile ff
將文件myfile依次截斷到名為ffaa,ffab,ffac.....的文件中,每一文件的長度為55行
例二:
PostgresSQL 大型數據庫備份與回存:
因 Postgres 允許表格大過你系統檔案的最大容量,所以要將表格 dump 到單一的檔案可能會有問題,使用 split 來進行檔案分割。
% pg_dump dbname | split -b 1m - filename.dump.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~·】
我想給一個朋友傳一個大視頻,有幾百M,嘗試多種傳輸辦法失敗後,最後想到的是把視頻切開一片片“郵遞”過去給他,讓它自己組裝起來吧。
[root@ www.linuxidc.com public_rw]# ls -lh RevolutionOS.rmvb
-rwx------ 1 hoho hoho 276M 2005-09-09 RevolutionOS.rmvb
將將這個276M文件分割成20M的小文件,文件分割操作如下:
用法:split [選項] [輸入 [前綴]]
[root@ www.linuxidc.com public_rw]# split -b 20m RevolutionOS.rmvb RevOS_part_
[root@ www.linuxidc.com public_rw]# ls -lh
總計 552M
-rwx------ 1 hoho hoho 276M 2005-09-09 RevolutionOS.rmvb
-rw-r--r-- 1 root root 20M 03-19 17:59 RevOS_part_aa
-rw-r--r-- 1 root root 20M 03-19 17:59 RevOS_part_ab
...
-rw-r--r-- 1 root root 20M 03-19 18:00 RevOS_part_am
-rw-r--r-- 1 root root 16M 03-19 18:00 RevOS_part_an
“-b 20m”指定分割文件的大小為20M,文件後面的“RevOS_part_”是分割文件的前綴,最後的是16M的“剩余”文件。
組裝文件:
[root@ www.linuxidc.com public_rw] cat RevOS_part_* > RevolutionOS_RSB.rmvb
這裡不怕組裝順序錯誤,因為分割的時候是按字母順序排下來的,cat也是按照字母順序處理的,如果不放心,將組裝後的文件哈希對比一下:
[root@ www.linuxidc.com public_rw]# md5sum RevolutionOS.rmvb
ac7cce07f621b1ed6f692e6df0ac8c16 RevolutionOS.rmvb
[root@ www.linuxidc.com public_rw]# md5sum RevolutionOS_RSB.rmvb
ac7cce07f621b1ed6f692e6df0ac8c16 RevolutionOS_RSB.rmvb
放心了吧:)
如果要分割的是一個文本文件,比如有好幾千行,當然每行的字符數是不等的,想要以行數為分割,比如每100行生成1個文件,只需要 -l 參數,如下:
[root@ www.linuxidc.com public_rw]# split -l 100 test.txt
其實,如果不加任何參數,默認情況下是以1000行大小來分割的。
我想給一個朋友傳一個大視頻,有幾百M,嘗試多種傳輸辦法失敗後,最後想到的是把視頻切開一片片“郵遞”過去給他,讓它自己組裝起來吧。
[root@ www.linuxidc.com public_rw]# ls -lh RevolutionOS.rmvb
-rwx------ 1 hoho hoho 276M 2005-09-09 RevolutionOS.rmvb
將將這個276M文件分割成20M的小文件,文件分割操作如下:
用法:split [選項] [輸入 [前綴]]
[root@ www.linuxidc.com public_rw]# split -b 20m RevolutionOS.rmvb RevOS_part_
[root@ www.linuxidc.com public_rw]# ls -lh
總計 552M
-rwx------ 1 hoho hoho 276M 2005-09-09 RevolutionOS.rmvb
-rw-r--r-- 1 root root 20M 03-19 17:59 RevOS_part_aa
-rw-r--r-- 1 root root 20M 03-19 17:59 RevOS_part_ab
...
-rw-r--r-- 1 root root 20M 03-19 18:00 RevOS_part_am
-rw-r--r-- 1 root root 16M 03-19 18:00 RevOS_part_an
“-b 20m”指定分割文件的大小為20M,文件後面的“RevOS_part_”是分割文件的前綴,最後的是16M的“剩余”文件。
組裝文件:
[root@ www.linuxidc.com public_rw] cat RevOS_part_* > RevolutionOS_RSB.rmvb
這裡不怕組裝順序錯誤,因為分割的時候是按字母順序排下來的,cat也是按照字母順序處理的,如果不放心,將組裝後的文件哈希對比一下:
[root@ www.linuxidc.com public_rw]# md5sum RevolutionOS.rmvb
ac7cce07f621b1ed6f692e6df0ac8c16 RevolutionOS.rmvb
[root@ www.linuxidc.com public_rw]# md5sum RevolutionOS_RSB.rmvb
ac7cce07f621b1ed6f692e6df0ac8c16 RevolutionOS_RSB.rmvb
放心了吧:)
如果要分割的是一個文本文件,比如有好幾千行,當然每行的字符數是不等的,想要以行數為分割,比如每100行生成1個文件,只需要 -l 參數,如下:
[root@ www.linuxidc.com public_rw]# split -l 100 test.txt
其實,如果不加任何參數,默認情況下是以1000行大小來分割的
原始出處 、作者信息和本聲明。否則將追究法律責任。
】
我想給一個朋友傳一個大視頻,有幾百M,嘗試多種傳輸辦法失敗後,最後想到的是把視頻切開一片片“郵遞”過去給他,讓它自己組裝起來吧。
[root@ www.linuxidc.com public_rw]# ls -lh RevolutionOS.rmvb
-rwx------ 1 hoho hoho 276M 2005-09-09 RevolutionOS.rmvb
將將這個276M文件分割成20M的小文件,文件分割操作如下:
用法:split [選項] [輸入 [前綴]]
[root@ www.linuxidc.com public_rw]# split -b 20m RevolutionOS.rmvb RevOS_part_
[root@ www.linuxidc.com public_rw]# ls -lh
總計 552M
-rwx------ 1 hoho hoho 276M 2005-09-09 RevolutionOS.rmvb
-rw-r--r-- 1 root root 20M 03-19 17:59 RevOS_part_aa
-rw-r--r-- 1 root root 20M 03-19 17:59 RevOS_part_ab
...
-rw-r--r-- 1 root root 20M 03-19 18:00 RevOS_part_am
-rw-r--r-- 1 root root 16M 03-19 18:00 RevOS_part_an
“-b 20m”指定分割文件的大小為20M,文件後面的“RevOS_part_”是分割文件的前綴,最後的是16M的“剩余”文件。
組裝文件:
[root@ www.linuxidc.com public_rw] cat RevOS_part_* > RevolutionOS_RSB.rmvb
這裡不怕組裝順序錯誤,因為分割的時候是按字母順序排下來的,cat也是按照字母順序處理的,如果不放心,將組裝後的文件哈希對比一下:
[root@ www.linuxidc.com public_rw]# md5sum RevolutionOS.rmvb
ac7cce07f621b1ed6f692e6df0ac8c16 RevolutionOS.rmvb
[root@ www.linuxidc.com public_rw]# md5sum RevolutionOS_RSB.rmvb
ac7cce07f621b1ed6f692e6df0ac8c16 RevolutionOS_RSB.rmvb
放心了吧:)
如果要分割的是一個文本文件,比如有好幾千行,當然每行的字符數是不等的,想要以行數為分割,比如每100行生成1個文件,只需要 -l 參數,如下:
[root@ www.linuxidc.com public_rw]# split -l 100 test.txt
其實,如果不加任何參數,默認情況下是以1000行大小來分割的。