新聞中心
在Linux系統(tǒng)中,我們經(jīng)常需要切割大文件,例如將10G的日志文件切割為1G的小文件,以便進(jìn)行處理或傳輸。此時(shí),split命令就成為了我們的救星。split命令可以將一個(gè)大文件切割為多個(gè)小文件,同時(shí)也可以將多個(gè)小文件合并為一個(gè)大文件。本文將為大家介紹如何使用split命令輕松實(shí)現(xiàn)文件切割,以及其中的一些常用選項(xiàng)和技巧。

10多年的蠡縣網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。營(yíng)銷型網(wǎng)站建設(shè)的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整蠡縣建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)從事“蠡縣網(wǎng)站設(shè)計(jì)”,“蠡縣網(wǎng)站推廣”以來,每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
一、基本語法
split命令的基本語法如下:
“`
split [OPTION] [INPUT [PREFIX]]
“`
其中,OPTION為選項(xiàng),INPUT為要切割的文件名,PREFIX為輸出文件名的前綴。如果省略輸入文件名,則默認(rèn)從標(biāo)準(zhǔn)輸入讀取數(shù)據(jù);如果省略前綴,則默認(rèn)為”x”。例如,將一個(gè)名為”bigfile.txt”的文件切割為每個(gè)文件大小為1G的小文件,可以使用以下命令:
“`
split -b 1G bigfile.txt allfile.
“`
該命令將生成文件名以”allfile.”開頭的多個(gè)小文件,每個(gè)文件的大小為1G(最后一個(gè)文件的大小可能不足1G)。
二、選項(xiàng)詳解
1. -a, –suffix-length=N
指定文件名后綴的長(zhǎng)度,默認(rèn)為2。例如,如果指定-a 4,則生成的小文件的后綴形如”.aaaa”、”.aaab”、”.aaac”等。
2. -b, –bytes=SIZE
指定每個(gè)文件的大小。SIZE可以采用常用的大小單位,例如KB、MB、GB等。例如,如果指定-b 1M,則生成的每個(gè)小文件的大小為1MB(最后一個(gè)文件的大小可能小于1MB)。
3. -C, –line-bytes=SIZE
指定每一行的字節(jié)數(shù),在指定行數(shù)(-l選項(xiàng))時(shí)使用。例如,如果指定-C 1024,則每1024個(gè)字節(jié)為一行。
4. -d, –numeric-suffixes
將文件名后綴改為數(shù)字格式,例如”.001″、”.002″、”.003″等。
5. -l, –lines=NUMBER
指定每個(gè)文件的行數(shù),如果文件中的行數(shù)不足指定值,則最后一個(gè)文件可能會(huì)比其他文件要小。例如,如果指定-l 100,則生成的每個(gè)小文件包含100行數(shù)據(jù)(最后一個(gè)文件的行數(shù)可能小于100)。
6. –verbose
顯示輸出信息。
7. –help
顯示幫助信息。
8. –version
顯示版本信息。
三、常用技巧
1. 將多個(gè)小文件合并為一個(gè)大文件
使用cat命令將多個(gè)小文件合并為一個(gè)大文件。例如,將名為”allfile.”開頭的多個(gè)小文件合并為一個(gè)名為”bigfile.txt”的文件,可以使用以下命令:
“`
cat allfile.* > bigfile.txt
“`
2. 將大文件切割為定長(zhǎng)小文件
使用split命令將大文件切割為定長(zhǎng)小文件時(shí),可能會(huì)出現(xiàn)最后一個(gè)文件的大小小于指定值的情況。為了解決這個(gè)問題,可以使用dd命令來將最后一個(gè)小文件的大小調(diào)整為指定值。例如,將名為”bigfile.txt”的文件切割為每個(gè)文件大小為1G的小文件,并將最后一個(gè)小文件的大小調(diào)整為1G,可以使用以下命令:
“`
split -b 1G bigfile.txt allfile.
dd if=/dev/zero of=allfile.N bs=1 count=0 seek=1G
“`
其中,N為最后一個(gè)小文件的編號(hào),bs為塊大小,count為塊數(shù),seek為偏移量,if為輸入文件,of為輸出文件。以上命令將在最后一個(gè)小文件中插入一個(gè)1G大小的空塊,使得最后一個(gè)小文件的大小為1G。
3. 將大文件切割為指定行數(shù)的小文件
使用split命令將大文件切割為指定行數(shù)的小文件時(shí),如果文件中的行數(shù)不足指定值,則最后一個(gè)文件可能會(huì)比其他文件要小。為了避免出現(xiàn)這種情況,可以使用sed命令在文件末尾添加空行。例如,將名為”bigfile.txt”的文件切割為每個(gè)文件包含100行數(shù)據(jù)的小文件,并且最后一個(gè)文件的行數(shù)也為100時(shí),可以使用以下命令:
“`
sed -i -e ‘$a\’ bigfile.txt
split -l 100 bigfile.txt allfile.
“`
其中,sed命令用于在bigfile.txt文件末尾添加一個(gè)空行,-i選項(xiàng)指定對(duì)原文件進(jìn)行修改并保存,-e選項(xiàng)指定要執(zhí)行的命令。
四、
split命令是Linux中一款非常實(shí)用的文件切割工具,可以將一個(gè)大文件切割為多個(gè)小文件或?qū)⒍鄠€(gè)小文件合并為一個(gè)大文件。本文介紹了split命令的基本語法、常用選項(xiàng)以及一些實(shí)用技巧,希望能夠?qū)ψx者有所幫助。
相關(guān)問題拓展閱讀:
- linux分割文件命令
- Linux打包和壓縮
- linux下如何把split分割后的文件跟tar打包操作合并
linux分割文件命令
查看split命令語法:
Linux打包和壓縮
打包
打包,也稱為歸檔,指的是一個(gè)文件或目錄的,而這個(gè)被存儲(chǔ)在一個(gè)文件中。歸檔文件沒有經(jīng)過壓縮,因此,它占用的空間是其中所有文件和目錄的總和。通常,歸檔總是會(huì)和系統(tǒng)備份聯(lián)系在一起。
壓縮
壓縮是指利用算法將文件進(jìn)行處理,已達(dá)到保留更大文件信息,而讓文件體積變小的目的。其基本原理為,通過查找文件內(nèi)的重復(fù)字節(jié),建立一彎蘆個(gè)相同字節(jié)的詞典文件,并用一個(gè)代碼表示。
壓縮和歸檔文件類似,壓縮文件也是一個(gè)文件和目錄的,且這個(gè)也被存儲(chǔ)在一野山個(gè)文件中,但它們的不同之處在于,壓縮文件采用了不同的存儲(chǔ)方式,使其所占用的磁盤空間比中所有文件大小的總和要小。
由于計(jì)算機(jī)處理的信息是以二進(jìn)制的形式表示的,因此,壓縮軟件就是把二進(jìn)制信息中相同的字符串以特殊字符標(biāo)記,只要通過合理的數(shù)學(xué)計(jì)算,文件的體積就能夠被大大壓縮。把一個(gè)或者多個(gè)文件用壓縮軟件進(jìn)行壓縮,形成一個(gè)文件壓縮包,既可以節(jié)省存儲(chǔ)空間,又方便在網(wǎng)絡(luò)上傳送。
對(duì)文件進(jìn)行埋脊帶壓縮,很可能損壞文件中的內(nèi)容,因此,壓縮又可以分為有損壓縮和無損壓縮。
打包和壓縮的區(qū)別
打包指的是將多個(gè)文件和目錄集中存儲(chǔ)在一個(gè)文件中,而壓縮則指的是利用算法對(duì)文件進(jìn)行處理,從而達(dá)到縮減占用磁盤空間的目的。
Linux下,常用打包命令有2個(gè),分別是tar和dd;常用的壓縮命令有很多,比如gzip、zip、bzip2等。
主要針對(duì)單個(gè)文件壓縮,而非目錄
此工具來自于ncompress包,此工具目前已經(jīng)很少使用
對(duì)應(yīng)的文件是 .Z 后綴
格式
常用選項(xiàng)
范例
zcat file.Z 不顯式解壓縮的前提下查看文本文件內(nèi)容
范例
來自于 gzip 包
對(duì)應(yīng)的文件是 .gz 后綴
格式歷橋塵
常用選項(xiàng)
范例
范例
來自于 bzip2 包
對(duì)應(yīng)的文件是 .bz2 后綴
格式
常用選項(xiàng)
范例
來自于 xz 包
對(duì)應(yīng)的文件是 .bz2 后綴
選項(xiàng)
范例
zip 可以實(shí)現(xiàn)打包目錄和多個(gè)文件成一個(gè)文件并壓縮,但可能消隱會(huì)丟失文件屬性信息,如:所有者和組信息,一般建議使用 tar 代替
分別來自于 zip 和 unzip 包
選項(xiàng)
范例
范例:交互式加密和解密
范例: 非交互式加密和解密
tar 即 Tape ARchive 磁帶歸檔,可以對(duì)目錄和多個(gè)文件打包一個(gè)文件,肢禪并且可以壓縮,保留文件屬性不丟失,常用于備份功能,推薦使用
對(duì)應(yīng)的文件是 .tar 后綴
格式
選項(xiàng)
(1)創(chuàng)建歸檔,保留權(quán)限
(2)追加文件至歸檔:注:不支持對(duì)壓縮文件追加
(3) 查看歸檔文件中的文件列表
(4) 展開歸檔
(5) 結(jié)合壓縮工具實(shí)現(xiàn):歸檔并壓縮
范例
范例
范例
split 命令可以分割一個(gè)文件為多個(gè)文件
范例
將多個(gè)切割的小文件合并成一個(gè)大文件
cpio 是歷史悠久的打包和解包工具,不過目前也已較少使用
cpio 命令是通過重定向的方式將文件進(jìn)行打包備份,還原恢復(fù)的工具,它可以解壓以“.cpio”或者“.tar”結(jié)尾的文件
格式
常用選項(xiàng)
范例
linux下如何把split分割后的文件跟tar打包操作合并
#split -b 100m -d name file ; tar -zcvf file.tar.gz file*
關(guān)于linux split 切割的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。
香港服務(wù)器選創(chuàng)新互聯(lián),2H2G首月10元開通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務(wù)提供商,擁有超過10年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機(jī)、網(wǎng)站系統(tǒng)開發(fā)經(jīng)驗(yàn)。專業(yè)提供云主機(jī)、虛擬主機(jī)、域名注冊(cè)、VPS主機(jī)、云服務(wù)器、香港云服務(wù)器、免備案服務(wù)器等。
分享名稱:輕松掌握:Linux中切割文件的利器——split(linuxsplit切割)
轉(zhuǎn)載源于:http://m.5511xx.com/article/dhieoph.html


咨詢
建站咨詢
