ฉันมีไฟล์ขนาดใหญ่ (เช่น 8GB) ฉันจะแบ่งมันออกเป็นหลายส่วนได้อย่างไรสมมุติว่า 3 ส่วนเท่า ๆ กันแล้วหลังจากนั้นฉันจะรวมมันในภายหลังได้อย่างไร
ฉันมีไฟล์ขนาดใหญ่ (เช่น 8GB) ฉันจะแบ่งมันออกเป็นหลายส่วนได้อย่างไรสมมุติว่า 3 ส่วนเท่า ๆ กันแล้วหลังจากนั้นฉันจะรวมมันในภายหลังได้อย่างไร
คำตอบ:
มีหลายวิธีที่จะทำให้สำเร็จ เริ่มจากพื้นฐานกันก่อน
ให้บอกว่าฉันมีภาพและมันใหญ่เกินไป (10MB) ทั้งหมดที่ฉันทำคือ:
split --bytes=1M /path/to/image/image.jpg /path/to/image/prefixForNewImagePieces
จากนั้นเพื่อรวมเข้าด้วยกันฉันใช้แมว:
cat prefixFiles* > newimage.jpg
ตัวอย่างเช่น:
สมมติว่าฉันอยู่ในโฟลเดอร์ที่มีภาพ:
split --bytes=1M myimage.jpg new
หากรูปภาพอยู่ในไดเรกทอรีที่เรียกว่า images คุณสามารถทำได้ดังนี้:
split --bytes=1M images/myimage.jpg new
หากรูปภาพอยู่ในไดเรกทอรี / home / cyrex / images คุณสามารถทำได้ดังนี้:
split --bytes=1M /home/cyrex/images/myimage.jpg new
(ในกรณีทั้งหมดข้างต้นก็จะแยกออกmyimage.jpg
เป็นชิ้น 1MB และคำนำหน้าชื่อของชิ้นส่วนที่มีคำใหม่. ดังนั้นพวกเขาจะมีลักษณะเช่นnewaa
, newab
, newac
, newad
... )
หากคุณกำลังแยกไฟล์ข้อความและต้องการแยกไฟล์ตามบรรทัดคุณสามารถทำได้ดังนี้:
split -l 1000 book.txt new
ซึ่งจะแยกไฟล์ข้อความในไฟล์เอาต์พุตแต่ละบรรทัด 1,000 บรรทัด นี่เป็นอีกวิธีหนึ่งในการแบ่งไฟล์และส่วนใหญ่จะใช้สำหรับไฟล์ข้อความเช่นบันทึกการถ่ายโอนข้อมูล sql, ไฟล์ csv ฯลฯ
จากนั้นฉันก็รวมมัน
cat new* > newimage.jpg
นี่เป็นวิธีหนึ่ง คุณสามารถเปลี่ยนขนาดของชิ้นส่วนที่แยกได้ เพียงแค่เปลี่ยนชิ้นส่วนที่บอกว่า--bytes=1M
เป็น--bytes=1K
1 กิโลไบต์หรือ 1G สำหรับกิกะไบต์หรือตัวเลขอื่นเช่น--bytes=4K
ชิ้น 4KB
อีกวิธีคือตัวเลือกการบีบอัดใน gui of Nautilus มันมีตัวเลือกให้คุณแบ่งไฟล์หรือไฟล์ที่คุณต้องการบีบอัดให้มีขนาดเล็กกว่าเมกะไบต์ มันง่ายและสะดวก
สมมติว่าคุณมีภาพ ISO ที่เรียกว่าubuntu.iso
คุณสามารถทำได้:
7z a -v5m -mx0 ubuntu.7z ubuntu.iso
นี้จะสร้างไฟล์ขนาด 5MB ubuntu.iso
จาก ขนาด-v5m
คือปริมาตรเพื่อให้คุณสามารถเปลี่ยนเป็น 10, 12, 1, 3 และ m สามารถเปลี่ยนเป็น k สำหรับกิโลไบต์ ฯลฯ -mx0
สวิทช์บอกว่า 7-Zip ที่จะใช้การบีบอัดไม่ว่ามีเพียงเพื่อแบ่งข้อมูลออกเป็นส่วน
ในการสกัดเพียงทำ
7z x ubuntu.7z.001
วิธีนี้คุณแยกไฟล์แรกและ 7z เริ่มคลายไฟล์จากไฟล์ต่อไปนี้ตามลำดับ คุณสามารถทำได้
7z e ubuntu.7z.001
ซึ่งมีผลเหมือนกันที่นี่
ใช้split -b
กับหมายเลขที่เหมาะสมคุณจะได้รับสามชิ้น
จำนวนอาจเป็น:
size=$(wc -c <"file name")
one_third=$((size/3+1))
หากต้องการประกอบอีกครั้งให้ใช้ cat
cat "file name"* > "file name"
หน้าคู่มือจะช่วยกรอกรายละเอียด
split --number
เพื่อsplit
คำนวณจำนวนไฟล์ให้กับคุณ: askubuntu.com/questions/54579/ …
เป็นโปรแกรมฟรีแวร์ที่ได้รับความนิยมในการแยกและรวมไฟล์อีกครั้ง โปรแกรมมีให้บริการบน Windows, Linux และแพลตฟอร์มอื่น ๆ ที่หลากหลาย
HJSplit สำหรับ Linux เป็นตัวแยกไฟล์ฟรีแวร์สำหรับ Linux พร้อมส่วนต่อประสานกราฟิกกับผู้ใช้ HJSplit รองรับขนาดไฟล์กว่า 100 กิกะไบต์, แยก, เข้าร่วม / ตรวจสอบ, ตรวจสอบ MD5, เปรียบเทียบไฟล์, "รันโดยไม่ต้องติดตั้ง" และโปรแกรมสามารถพกพาได้อย่างสมบูรณ์
HJSplit สำหรับ Linux ไม่จำเป็นต้องติดตั้งและไม่ได้ขึ้นอยู่กับไลบรารีพิเศษใด ๆ เพียงแยกไฟล์เก็บถาวร hjsplitlx.tar.gz ลงในไดเรกทอรีที่คุณเลือกและเริ่มโปรแกรมจากตัวจัดการไฟล์ Linux หรือหน้าต่างเทอร์มินัล คุณอาจต้องปรับเปลี่ยนการอนุญาตไฟล์ของโปรแกรมเป็น 'ปฏิบัติการ'
คำพังเพยแยก? http://gnome-split.org/
GNOME Split เป็นเครื่องมือที่ช่วยให้คุณสามารถแยกไฟล์และรวมกลับคืนมาได้ มันเขียนใน Java และใช้ส่วนติดต่อผู้ใช้ GTK + (ขอบคุณโครงการ java-gnome) เป้าหมายคือการนำเสนอการใช้งานดั้งเดิมของโครงการที่คล้ายกันซึ่งสามารถจัดการไฟล์ได้หลายรูปแบบ (เช่น Xtremsplit)
http://www.omgubuntu.co.uk/2010/08/split-large-files-easily-in-ubuntu-with-gnome-split/
HOZ - Hacha Open Zource v1.65 - http://hoz.sourceforge.net/
จากนักพัฒนา:
OZ คือสิ่งที่คุณจะเรียกว่า 'ตัวแยกไฟล์' รูปแบบไฟล์ของมันเหมือนกับไฟล์ที่ใช้โดยซอฟต์แวร์ 'Hacha' ซึ่งเป็นตัวแยกสัญญาณที่รู้จักกันดีในสเปนและละตินอเมริกา HOZ เป็นการใช้งาน C แบบโอเพ่นซอร์สและพกพาของตัวแยกสัญญาณที่รองรับ 'Hacha'
HOZ นั้นเล็กกว่าและเร็วกว่า 'Hacha'
btw ฉันใช้ 'Z' isntead ของ 'S' ใน 'Zource' เพราะ 'hoz' คือ 'เคียว' ในภาษาสเปนและเนื่องจาก 'hacha' เป็นคำภาษาสเปนสำหรับ 'ขวาน' ...
หลังจากติดตั้งคุณสามารถใช้ Hoz GUI ได้โดยการวางghoz
ในเครื่อง การดำเนินการนั้นง่ายมากที่ไม่ต้องการคำอธิบายใด ๆ แต่สามารถขอข้อมูลเพิ่มเติมได้ในเว็บไซต์ของผู้พัฒนา
โชคดี!
การแยกไฟล์และผสานยูทิลิตี้ฟรีที่พัฒนาใน Java มันเป็นแอพพลิเคชั่นขนาดเล็กที่ช่วยให้ผู้ใช้สามารถแบ่งไฟล์ประเภทใดก็ได้ในขนาดที่เล็กลงเป็น KB, MB หรือ GB
มันสามารถใช้ได้กับ Linux เช่นเดียวกับ Windows
WoodCutter มี 3 วิธีในการรวมไฟล์ต้นฉบับกลับมา WoodCutter สร้างไฟล์ผสานซึ่งสามารถประมวลผลโดยแอปพลิเคชัน WoodCutter เพื่อเข้าร่วมไฟล์ทั้งหมดกลับ ในกรณีที่ตัวรับสัญญาณของไฟล์แยกไม่ได้ติดตั้ง WoodCutter แล้วยังสามารถรับไฟล์ต้นฉบับได้เนื่องจาก WoodCutter ยังสร้างไฟล์แบตช์และไฟล์สคริปต์เชลล์เพื่อรวมไฟล์กลับ ไฟล์แบตช์จะใช้ในแพลตฟอร์ม Windows และเชลล์สคริปต์จะใช้ในแพลตฟอร์ม Linux
split --number
นี่เป็นตัวเลือกที่ดีในการสร้างไฟล์ N ที่มีขนาดเท่ากันยกเว้นไฟล์สุดท้ายซึ่งอาจมีขนาดใหญ่กว่าเนื่องจากไม่สามารถแบ่งแยกได้ เช่น:
printf '0123456789' > f.txt
split -d --number 2 f.txt f.txt.part.
tail f.txt.part.*
ให้:
==> f.txt.part.00 <==
01234
==> f.txt.part.01 <==
56789
และ:
split -d --number 3 f.txt f.txt.part.
tail f.txt.part.*
ให้:
==> f.txt.part.00 <==
012
==> f.txt.part.01 <==
345
==> f.txt.part.02 <==
6789
เมื่อเทียบกับการ-b
คำนวณขนาด + อย่างชัดเจนซึ่งมีการกล่าวถึงที่: https://askubuntu.com/a/54584/52975ไฟล์สุดท้ายอาจมีขนาดใหญ่กว่าไฟล์ก่อนหน้าเกือบสองเท่าซึ่งบางครั้งก็เป็นข้อเสียของตัวเลือกนี้ อย่างไรก็ตามมันสะดวกกว่าหลายครั้งเนื่องจากคุณไม่ต้องทำการคำนวณขนาดด้วยตัวเอง
จำนวนบรรทัดที่ถูกถามที่: https://stackoverflow.com/questions/2016894/how-to-split-a-large-text-file-into-smaller-files-with-equal-number-of-lines
ทดสอบในsplit
2.28, Ubuntu 18.04