歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux split命令參數及用法詳解---Linux分割文件命令

Linux split命令參數及用法詳解---Linux分割文件命令

日期:2017/2/28 15:49:40   编辑:Linux教程

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行大小來分割的。

Copyright © Linux教程網 All Rights Reserved