Linux中split大文件分割和cat合并文件詳解
前言
當(dāng)需要將較大的數(shù)據(jù)上傳到服務(wù)器,或從服務(wù)器下載較大的日志文件時(shí),往往會(huì)因?yàn)榫W(wǎng)絡(luò)或其它原因而導(dǎo)致傳輸中斷而不得不重新傳輸。這種情況下,可以先將大文件分割成小文件后分批傳輸,傳完后再合并文件。
1. 分割文件
文件分割可以使用split命令,該即支持文本文件分割,又支持二進(jìn)制文件分割;而合并文件可以使用cat命令。
1.1 文本文件分割
分割文本文件時(shí),可以按文件大小分割,也可以按文本行數(shù)分割。
按文件大小分割
按文件大小分割文件時(shí),需要以-C參數(shù)指定分割后的文件大?。?/p>
$ split -C 100M large_file.txt stxt
如上所示,我們將大文件large_file.txt按100M大小進(jìn)行分割,并指定了分割后文件前綴stxt;當(dāng)不指定前綴時(shí),split會(huì)自動(dòng)對(duì)分割文件進(jìn)行命名,一般會(huì)以x開頭。
按行分割
文本文件還可以以行為單位進(jìn)行分割,以行數(shù)進(jìn)行分割時(shí)會(huì)忽略文件大小,并以-l參數(shù)指定分割后文件的行數(shù):
$ split -l 1000 large_file.txt stxt
1.2 二進(jìn)制文件分割
二進(jìn)制文件分割類似于按大小分割文本文件,不同的是以-b參數(shù)來(lái)指定分割后的文件大小:
$ split -b 100M data.bak sdata
2. 文件合并
文件合并使用cat命令,上面幾種方式分割的文件都可以使用cat命令合并。
cat命令合并分割文件:
$ cat stxt* > new_file.txt
3. 命令格式
3.1 split命令說明
split命令格式如下:
split [選項(xiàng)]... [要切割的文件 [輸出文件前綴]]
命令參數(shù)
-a, --suffix-length=N 使用長(zhǎng)度為 N 的后綴 (默認(rèn) 2)
-b, --bytes=SIZE 設(shè)置輸出文件的大小。支持單位:m,k
-C, --line-bytes=SIZE 設(shè)置輸出文件的最大行數(shù)。與 -b 類似,但會(huì)盡量維持每行的完整性
-d, --numeric-suffixes 使用數(shù)字后綴代替字母
-l, --lines=NUMBER 設(shè)備輸出文件的行數(shù)
--help 顯示版本信息
--version 輸出版本信息
3.2 cat命令說明
cat是Linux下使用頻率較高的命令之一,該令詳細(xì)介紹:
cat連接文件并打印到標(biāo)準(zhǔn)輸出設(shè)備上
cat命令的常見使用場(chǎng)景有:
顯示文件內(nèi)容:
$ cat filename
創(chuàng)建一個(gè)空文件:
$ cat > filename
文件合并:
$ cat file1 file2 > file
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,如果有疑問大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
相關(guān)文章
Centos8使用Squid配置代理服務(wù)器的詳細(xì)過程
這篇文章主要介紹了Centos8使用Squid配置簡(jiǎn)單的代理服務(wù)器,安裝過程中需要?jiǎng)?chuàng)建新賬戶并將其設(shè)置為管理賬戶,設(shè)置網(wǎng)絡(luò)連接,簡(jiǎn)單的配置過程跟隨小編一起看看吧2022-01-01Centos7.4 zabbix3.4.7源碼安裝的方法步驟
這篇文章主要介紹了Centos7.4 zabbix3.4.7源碼安裝的方法步驟,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧2018-06-06Linux下查看binlog文件創(chuàng)建時(shí)間的命令
這篇文章主要介紹了Linux下查看binlog文件創(chuàng)建時(shí)間的命令,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-05-05CentOS 7下用firewall-cmd控制端口與端口轉(zhuǎn)發(fā)詳解
這篇文章主要給大家介紹了在CentOS 7下用firewall-cmd控制端口與端口轉(zhuǎn)發(fā)的相關(guān)資料,文中介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下來(lái)來(lái)一起看看吧。2017-05-05Windows7下Linux雙操作系統(tǒng)安裝圖文教程
這篇文章主要為大家詳細(xì)介紹了Windows7下Linux雙操作系統(tǒng)安裝圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-07-07如何使用Apache Kafka 構(gòu)建實(shí)時(shí)數(shù)據(jù)處理應(yīng)用
?Apache Kafka 在實(shí)時(shí)數(shù)據(jù)處理中的重要性源于其高性能、可靠性、可擴(kuò)展性和靈活性,這篇文章主要介紹了使用Apache Kafka 構(gòu)建實(shí)時(shí)數(shù)據(jù)處理應(yīng)用,需要的朋友可以參考下2024-07-07Linux防火墻firewall設(shè)置端口訪問限制方式
在Linux系統(tǒng)中,firewall工具可以幫助用戶配置防火墻規(guī)則,實(shí)現(xiàn)對(duì)端口的精確限制,通過簡(jiǎn)單的命令,用戶可以開放或移除單個(gè)端口、批量處理端口規(guī)則、查看所有開放端口、允許或禁止特定IP或網(wǎng)段訪問某端口等操作2024-10-10CentOS7環(huán)境搭建python3以及與python2實(shí)現(xiàn)共存的方法
這篇文章主要介紹了CentOS7環(huán)境搭建python3以及與python2實(shí)現(xiàn)共存的方法,結(jié)合實(shí)例形式簡(jiǎn)單分析了CentOS7環(huán)境下安裝Python3的步驟、命令及測(cè)試代碼示例,非常簡(jiǎn)單易懂,需要的朋友可以參考下2018-06-06