ฉันจะบีบอัดหลายไฟล์ลงในไฟล์เก็บถาวรเดียวโดยใช้ lzma ได้อย่างไร


4

ดูที่ตัวเลือกต่างๆxzและlzmaฉันไม่สามารถหาวิธีบีบอัดไฟล์หลาย ๆ ไฟล์ให้เป็นไฟล์เดียวได้ ฉันรู้ว่าเป็นไปได้เพราะฉันไม่ได้บีบอัด.lzmaไฟล์และเปิดเพลงเป็นจำนวนมาก
ถ้าฉันลองทำlzma -k file file file fileมันแค่บีบอัดทีละอัน มีตัวเลือกหรือข้อโต้แย้งที่ชัดเจนว่าฉันหายไปหรือไม่

คำตอบ:


7

สิ่งหนึ่งที่คุณสามารถทำได้คือใช้ tar:

tar cf files.lzma --lzma file1 file2 ... fileN

หรือง่ายกว่า

tar cf files.lzma --lzma file*

ที่สร้างfiles.lzmaไฟล์เก็บถาวรซึ่งคุณสามารถแตกไฟล์โดยใช้:

tar xf files.lzma

มันคุ้มค่าที่จะชี้ให้เห็นว่าไม่เหมือน zip, rar, arj บน windows และเครื่องมือทั่วไปในระบบ unix / linux ที่ทำงานบนสตรีมดังนั้นโดยทั่วไปจะไม่มีตัวเลือกในการสร้างไฟล์เก็บถาวรเดียว
ทิงค์

@tink คุณอ้างถึงเครื่องมือทั่วไปอะไรบ้าง? gzipและtarสามารถ
terdon

gzip, bzip2, บีบอัด ... ฉันไม่เห็นพูดถึงการบีบอัดไฟล์หลาย ๆ ไฟล์ลงในไฟล์เก็บถาวรเดียวโดยใช้ gzip เพียงอย่างเดียว เชื่อมโยงเนื้อหาของหลายไฟล์เป็นหนึ่งโดยใช้ -c กับการเปลี่ยนเส้นทางไม่นับ :)
tink

@tink ขณะที่มันเป็นความจริงที่ว่ามาตรฐาน Linux เครื่องมือการเก็บข้อมูล ( gzip, bzip2, xzฯลฯ ) เท่านั้นที่สามารถบีบอัดไฟล์เดียวคุณสามารถรวมไฟล์เหล่านั้นเป็นtarที่เก็บครั้งแรกแล้วบีบอัดข้อมูลที่เก็บ นี่เป็นวิธีปฏิบัติที่ยอมรับกันโดยทั่วไปในระบบ * nix และสามารถทำได้ภายในโดยตรงtarโดยใช้สวิตช์-z(gzip), -j(bzip2) หรือ-J(xz) เพื่อบีบอัดสตรีมไฟล์เก็บถาวรโดยอัตโนมัติหลังจากการสร้าง (ตรวจสอบtarหน้าคนของระบบของคุณสวิตช์เนื่องจากสามารถแตกต่างกันระหว่างระบบ / การใช้งาน)
Nathan2055

0

ผู้ชาย lzma

ตัวอย่าง

ข้อมูลพื้นฐานเกี่ยวกับ

บีบอัดไฟล์ foo ลงใน foo.xz โดยใช้ระดับการบีบอัดเริ่มต้น (-6) และลบ foo หากการบีบอัดสำเร็จ:

xz foo

Decompress bar.xz ลงใน bar และอย่าลบ bar.xz แม้ว่าการคลายการบีบอัดจะทำได้สำเร็จ:

xz -dk bar.xz

สร้าง baz.tar.xz ด้วย preset -4e (-4 --extreme) ซึ่งช้ากว่าเช่นค่าดีฟอลต์ -6 แต่ต้องการหน่วยความจำน้อยกว่าสำหรับการบีบอัดและคลายการบีบอัด (48 MiB และ 5 MiB ตามลำดับ):

tar cf - baz | xz -4e > baz.tar.xz

การผสมผสานของไฟล์บีบอัดและไฟล์ที่ไม่มีการบีบอัดสามารถแตกออกเป็นเอาต์พุตมาตรฐานได้ด้วยคำสั่งเดียว:

xz -dcf a.txt b.txt.xz c.txt d.txt.lzma > abcd.txt
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.