一、簡介
在Linux上,有時候需要對文件進行拆分,在保證數據完整性的情況下分成多個小文件。這樣做的好處是可以方便在網路上傳輸,或者放入存儲空間較小的設備等等。本篇文章將從多個方面為大家介紹如何在Linux中拆分文件。
二、方法一: split命令
split命令是Linux中最基本的文件拆分命令,通過指定拆分文件時的位元組數或行數,在不改變文件內容的前提下將文件進行拆分。
$ split -b 1M file.txt
上面的命令將file.txt文件按照1MB為大小進行拆分。
還可以通過指定拆分文件的前綴以及拆分後文件的編號來方便的進行批量操作。
$ split -b 1M file.txt part_ --numeric-suffixes=1 -d
上面的命令將file.txt文件按照1MB為大小進行拆分,並且通過指定part_為前綴,–numeric-suffixes=1為拆分後編號的起始數字,-d表示按照數值進行排序。
三、方法二: csplit命令
csplit命令是一種更加靈活的文件拆分命令,支持按照指定的分界符或者正則表達式進行拆分等等。
$ csplit file.txt '/^$/' '{10}'
上面的命令將file.txt以每10個空行為一組進行拆分。
還可以在進行文件拆分前對文件進行正則表達式匹配等操作。
$ sed -i 's/original/new/g' file.txt $ csplit file.txt '/^$/' '{10}'
上面的命令將file.txt先通過sed命令進行替換操作,然後進行按照空行進行拆分操作。
四、方法三: tar命令
tar命令可以在進行壓縮操作的同時,將文件進行合併或者拆分。通過選項進行配置即可實現。
$ tar cvzf - file.txt | split -b 1M - file.tar.gz.
上面的命令將file.txt進行壓縮操作後,按照1MB的大小進行拆分存儲。
五、方法四:rsync命令
rsync命令是在Linux上進行文件備份和同步的常用命令,也可以用於文件拆分操作。通過指定拆分後文件存儲的位置來實現。
$ rsync --append file.txt file.txt.1 file.txt.2
上面的命令將file.txt文件拆分成了file.txt.1和file.txt.2兩個文件。
六、總結
在Linux系統中,有多種方法可以進行文件拆分操作。可以根據文件大小、需要拆分的行數或者分界符等進行選擇。我們了解到了split、csplit、tar、rsync等命令的基本用法。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/240088.html