最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Linux下實(shí)現(xiàn)大文件切割與合并實(shí)戰(zhàn)

 更新時(shí)間:2026年04月13日 09:45:34   作者:數(shù)據(jù)雕塑家  
本文介紹了在FAT32文件系統(tǒng)限制下,使用Linux系統(tǒng)自帶的split和cat命令切割、傳輸和合并大文件的方法,詳細(xì)講解了split命令的用法、實(shí)戰(zhàn)場景、高級(jí)用法、常見問題及注意事項(xiàng),并提供了自動(dòng)化腳本示例,需要的朋友可以參考下

在日常工作中,我們經(jīng)常會(huì)遇到需要傳輸超過4GB的大文件(如ISO鏡像、數(shù)據(jù)庫備份、日志文件等)到FAT32文件系統(tǒng)的存儲(chǔ)設(shè)備(如U盤、移動(dòng)硬盤)上,但由于FAT32文件系統(tǒng)本身的設(shè)計(jì)限制,單個(gè)文件最大只能支持4GB,這導(dǎo)致大文件無法直接拷貝。

本文將詳細(xì)介紹如何使用Linux系統(tǒng)自帶的splitcat命令,輕松實(shí)現(xiàn)大文件的切割與合并,徹底告別FAT32的文件大小限制。

一、背景與痛點(diǎn)

1.1 為什么需要切割文件?

FAT32文件系統(tǒng)有一個(gè)眾所周知的限制:單個(gè)文件大小不能超過4GB。這意味著:

  • 你下載的Linux發(fā)行版ISO鏡像(通常4-8GB)無法直接拷貝到FAT32格式的U盤
  • 數(shù)據(jù)庫備份文件(可能幾十GB)無法通過FAT32移動(dòng)硬盤轉(zhuǎn)移
  • 大型視頻文件或軟件安裝包需要拆分后才能存儲(chǔ)

1.2 解決方案

使用Linux系統(tǒng)自帶的split命令將大文件切割成多個(gè)小于4GB的小文件,傳輸?shù)侥繕?biāo)機(jī)器后,再用cat命令合并還原。整個(gè)過程無損、快速、簡單。

二、split命令詳解

2.1 基本語法

split [選項(xiàng)] [輸入文件] [輸出前綴]

2.2 常用選項(xiàng)

選項(xiàng)說明
-b SIZE按指定大小切割,單位支持k、m、g(如 -b 450m
-d使用數(shù)字后綴(如 00、01),而不是默認(rèn)的字母后綴
-a N指定后綴長度為N(默認(rèn)2),如 -a 3 生成 000001
-l NUMBER按行數(shù)切割(適合文本文件)

2.3 切割示例對(duì)比

# 方式1:切割后壓縮(邊壓縮邊切割)
tar -zcf - /path/to/largefile.iso | split -b 450M -d - output.tar.gz.

# 方式2:直接切割原始文件(推薦,簡單直接)
split -b 450m -d largefile.iso largefile.iso.

三、實(shí)戰(zhàn)場景:切割與合并ISO鏡像

假設(shè)我們有一個(gè)大小為6.5GB的麒麟操作系統(tǒng)ISO文件:

Kylin-Server-10-SP1-Release-Build20-20210518-arm64.iso

3.1 切割操作

方案一:直接切割(本次實(shí)戰(zhàn)采用)

# 將ISO切割成450MB大小的多個(gè)文件
split -b 450m -d Kylin-Server-10-SP1-Release-Build20-20210518-arm64.iso Kylin-Server-10-SP1-Release-Build20-20210518-arm64.iso.

執(zhí)行效果:

$ ls -lh
total 6.5G
-rw-r--r-- 1 root root 450M  Kylin-Server-10-SP1-Release-Build20-20210518-arm64.iso.00
-rw-r--r-- 1 root root 450M  Kylin-Server-10-SP1-Release-Build20-20210518-arm64.iso.01
-rw-r--r-- 1 root root 450M  Kylin-Server-10-SP1-Release-Build20-20210518-arm64.iso.02
-rw-r--r-- 1 root root 450M  Kylin-Server-10-SP1-Release-Build20-20210518-arm64.iso.03
-rw-r--r-- 1 root root 450M  Kylin-Server-10-SP1-Release-Build20-20210518-arm64.iso.04
-rw-r--r-- 1 root root 450M  Kylin-Server-10-SP1-Release-Build20-20210518-arm64.iso.05
...
-rw-r--r-- 1 root root 350M  Kylin-Server-10-SP1-Release-Build20-20210518-arm64.iso.14

方案二:邊壓縮邊切割(節(jié)省空間)

# 先壓縮再切割,適合對(duì)壓縮率敏感的場景
tar -zcf - /home/package/Kylin-Server-10-SP1-Release-Build20-20210518-arm64.iso | split -b 450M -d - Kylin-Server-10-SP1.tar.gz.

方案三:macOS系統(tǒng)示例

# macOS下切割CentOS ISO為3GB大小的文件
split -b 3000m CentOS-7-x86_64-DVD-2009.iso CentOS-7-x86_64-DVD-2009.iso.

3.2 上傳切割文件

將切割生成的多個(gè)小文件拷貝到FAT32格式的U盤或移動(dòng)硬盤:

# 復(fù)制所有切割文件到目標(biāo)存儲(chǔ)設(shè)備
cp Kylin-Server-10-SP1-Release-Build20-20210518-arm64.iso.* /media/usb/

提示:每個(gè)小文件都小于450MB,完全可以正常寫入FAT32文件系統(tǒng)。

3.3 合并還原

在目標(biāo)服務(wù)器上,將所有切割片段合并成完整文件。

方式一:直接合并(對(duì)應(yīng)直接切割方式)

# 合并所有片段,還原完整文件
cat Kylin-Server-10-SP1-Release-Build20-20210518-arm64.iso.* > Kylin-Server-10-SP1-Release-Build20-20210518-arm64.iso

# 驗(yàn)證MD5(可選,確保文件完整性)
md5sum Kylin-Server-10-SP1-Release-Build20-20210518-arm64.iso

方式二:合并并解壓(對(duì)應(yīng)邊切割邊壓縮方式)

# 合并并解壓一步完成
cat Kylin-Server-10-SP1.tar.gz.* | tar -zxv

3.4 驗(yàn)證合并結(jié)果

# 查看ISO文件信息
$ ls -lh Kylin-Server-10-SP1-Release-Build20-20210518-arm64.iso
-rw-r--r-- 1 root root 6.5G Kylin-Server-10-SP1-Release-Build20-20210518-arm64.iso

# 嘗試掛載驗(yàn)證(Linux)
mount -o loop Kylin-Server-10-SP1-Release-Build20-20210518-arm64.iso /mnt/iso
ls /mnt/iso

四、高級(jí)用法與技巧

4.1 指定切割文件大小單位

# 按字節(jié)(默認(rèn))
split -b 1048576 largefile chunk_    # 1MB

# 按KB
split -b 1024k largefile chunk_      # 1024KB

# 按MB
split -b 100m largefile chunk_       # 100MB

# 按GB(注意小寫g)
split -b 2g largefile chunk_         # 2GB

4.2 自定義后綴長度

# 生成3位數(shù)字后綴(000、001、002...)
split -b 450m -d -a 3 largefile.iso largefile.iso.

# 輸出結(jié)果:largefile.iso.000、largefile.iso.001...

4.3 按行數(shù)切割文本文件

# 將日志文件按10萬行切割
split -l 100000 app.log app.log.part_

4.4 帶進(jìn)度條的合并(使用pv工具)

# 安裝pv(pipe viewer)工具
yum install pv -y   # CentOS/RHEL
apt install pv -y   # Ubuntu/Debian

# 帶進(jìn)度條的合并
pv Kylin-Server-10-SP1-Release-Build20-20210518-arm64.iso.* > Kylin-Server-10-SP1-Release-Build20-20210518-arm64.iso

五、常見問題與注意事項(xiàng)

5.1 切割后文件無法合并

原因:切割命令和合并命令方式不匹配(如壓縮切割和直接切割混用)

解決:保持一致的處理方式

  • 直接切割 → 直接合并
  • 壓縮切割 → 解壓合并

5.2 合并后文件MD5不一致

原因

  • 傳輸過程中部分片段損壞
  • 切割時(shí)使用了不同的切割大小

解決

# 合并后重新計(jì)算MD5并與原文件比對(duì)
md5sum original.iso
md5sum restored.iso

# 如不一致,重新傳輸損壞的片段并合并

5.3 磁盤空間不足

注意:切割和合并過程需要額外的磁盤空間:

  • 切割:需要原文件大小 + 切割后文件大小
  • 合并:需要所有片段大小 + 合并后文件大小

建議在操作前確保有至少2倍于原文件的可用空間。

5.4 Windows系統(tǒng)如何處理?

如果目標(biāo)機(jī)器是Windows系統(tǒng):

  1. 使用Git Bash:內(nèi)置了cat命令,可用同樣方式合并
  2. 使用第三方工具:如7-Zip支持合并split分割的文件
  3. 使用PowerShell
# PowerShell合并文件
Get-Content Kylin-Server-10-SP1.iso.* -AsByteStream | Set-Content Kylin-Server-10-SP1.iso -AsByteStream

六、自動(dòng)化腳本示例

6.1 一鍵切割腳本

#!/bin/bash
# split_file.sh - 大文件切割腳本

FILE=$1
SIZE=${2:-450m}  # 默認(rèn)450M
PREFIX=${FILE}.   # 前綴

if [ -z "$FILE" ]; then
    echo "用法: $0 <文件名> [切割大小]"
    echo "示例: $0 ubuntu.iso 2g"
    exit 1
fi

echo "正在切割 $FILE 為 ${SIZE} 大小的文件..."
split -b $SIZE -d $FILE ${PREFIX}
echo "切割完成!生成的文件:"
ls -lh ${PREFIX}*

6.2 一鍵合并腳本

#!/bin/bash
# merge_file.sh - 文件合并腳本

PREFIX=$1
OUTPUT=$2

if [ -z "$PREFIX" ] || [ -z "$OUTPUT" ]; then
    echo "用法: $0 <文件前綴> <輸出文件名>"
    echo "示例: $0 ubuntu.iso. ubuntu.iso"
    exit 1
fi

echo "正在合并 ${PREFIX}* 為 $OUTPUT ..."
cat ${PREFIX}* > $OUTPUT
echo "合并完成!"
ls -lh $OUTPUT

七、總結(jié)

通過本文的實(shí)戰(zhàn)演示,我們掌握了:

操作命令適用場景
切割split -b 450m -d file.iso file.iso.標(biāo)準(zhǔn)切割,簡單可靠
壓縮切割tar -zcf - file.iso | split -b 450m -d - out.tar.gz.節(jié)省存儲(chǔ)空間
合并cat file.iso.* > file.iso還原原始文件
合并解壓cat out.tar.gz.* | tar -zxv合并并解壓一步完成

核心要點(diǎn):

  1. ? split + cat 是Linux內(nèi)置命令,無需安裝額外軟件
  2. ? 切割后的小文件可以順利拷貝到FAT32文件系統(tǒng)
  3. ? 合并過程無損,可完全還原原始文件
  4. ? 配合md5sum驗(yàn)證可確保數(shù)據(jù)完整性

這個(gè)技巧不僅適用于ISO鏡像,對(duì)于數(shù)據(jù)庫備份、日志歸檔、視頻文件等任何大文件傳輸場景都非常實(shí)用。下次遇到FAT32的4GB限制時(shí),相信你已經(jīng)有了完美的解決方案!

以上就是Linux下實(shí)現(xiàn)大文件切割與合并實(shí)戰(zhàn)的詳細(xì)內(nèi)容,更多關(guān)于Linux大文件切割與合并的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Linux下如何更新curl版本

    Linux下如何更新curl版本

    這篇文章主要介紹了Linux下如何更新curl版本問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • 詳解linux里的backlog參數(shù)

    詳解linux里的backlog參數(shù)

    本文詳細(xì)講解了linux里的backlog參數(shù),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-02-02
  • linux下用tar命令將當(dāng)前目錄下文件按子目錄壓縮歸檔的實(shí)現(xiàn)

    linux下用tar命令將當(dāng)前目錄下文件按子目錄壓縮歸檔的實(shí)現(xiàn)

    下面小編就為大家?guī)硪黄猯inux下用tar命令將當(dāng)前目錄下文件按子目錄壓縮歸檔的實(shí)現(xiàn)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-12-12
  • Linux中crontab定時(shí)任務(wù)不執(zhí)行的原因

    Linux中crontab定時(shí)任務(wù)不執(zhí)行的原因

    本篇文章主要介紹了Linux中crontab定時(shí)任務(wù)不執(zhí)行的原因,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-03-03
  • Linux命令之pgrep的用法

    Linux命令之pgrep的用法

    這篇文章主要介紹了Linux命令之pgrep的用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2026-03-03
  • Linux系統(tǒng)配置網(wǎng)絡(luò)詳細(xì)介紹

    Linux系統(tǒng)配置網(wǎng)絡(luò)詳細(xì)介紹

    大家好,本篇文章主要講的是Linux系統(tǒng)配置網(wǎng)絡(luò)詳細(xì)介紹,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下,方便下次瀏覽
    2022-01-01
  • 雙系統(tǒng)電腦中把Ubuntu裝進(jìn)外接移動(dòng)固態(tài)硬盤的全過程

    雙系統(tǒng)電腦中把Ubuntu裝進(jìn)外接移動(dòng)固態(tài)硬盤的全過程

    這篇文章主要介紹了如何在Windows?11系統(tǒng)中使用VMware?17創(chuàng)建虛擬機(jī),并在虛擬機(jī)中安裝Ubuntu?22.04桌面版或Ubuntu?20.04,文章還列舉了一些常見的安裝錯(cuò)誤及其解決方法,需要的朋友可以參考下
    2025-05-05
  • linux系統(tǒng)Ventoy制作U啟的教程

    linux系統(tǒng)Ventoy制作U啟的教程

    安裝Ventoy需確認(rèn)U盤設(shè)備名并格式化(需卸載掛載點(diǎn)),復(fù)制ISO文件后即可實(shí)現(xiàn)多系統(tǒng)啟動(dòng),支持多ISO、操作簡便,適合頻繁使用多系統(tǒng)U盤的用戶
    2025-08-08
  • Apache Flink 任意 JAR 包上傳漏洞利用及防范策略分析

    Apache Flink 任意 JAR 包上傳漏洞利用及防范策略分析

    這篇文章主要介紹了Apache Flink 任意 JAR 包上傳漏洞利用及防范策略, 本文提供的案例和方法僅用于教學(xué)目的,實(shí)際操作時(shí)應(yīng)確保遵守相關(guān)法律法規(guī),不應(yīng)用于非法侵入或攻擊他人系統(tǒng),需要的朋友可以參考下
    2024-07-07
  • CentOS 5.4 Kloxo安裝詳細(xì)說明

    CentOS 5.4 Kloxo安裝詳細(xì)說明

    在centos上安裝過N次kloxo,總沒有成功,經(jīng)過幾次的折騰,終于安裝成功了。
    2010-03-03

最新評(píng)論

望江县| 水富县| 弋阳县| 津市市| 阳城县| 上杭县| 平阳县| 黑河市| 阿克苏市| 赫章县| 佛坪县| 安福县| 子长县| 大连市| 江西省| 安岳县| 平泉县| 疏附县| 杭锦旗| 临武县| 攀枝花市| 娱乐| 华阴市| 新兴县| 沙洋县| 云龙县| 远安县| 罗定市| 闸北区| 新巴尔虎右旗| 永宁县| 安平县| 唐河县| 浑源县| 谢通门县| 沈丘县| 泾源县| 门头沟区| 会宁县| 阆中市| 武隆县|