โฮมเพจ » ทำอย่างไร » วิธีบีบอัดและแตกไฟล์โดยใช้คำสั่ง tar บน Linux

    วิธีบีบอัดและแตกไฟล์โดยใช้คำสั่ง tar บน Linux

    คำสั่ง tar บน Linux มักใช้เพื่อสร้างไฟล์. tar.gz หรือ. tgz หรือที่เรียกว่า“ tarballs” คำสั่งนี้มีตัวเลือกจำนวนมาก . คำสั่ง tar สามารถแตกไฟล์เก็บถาวรที่เป็นผลลัพธ์เช่นกัน.

    คำสั่ง GNU tar รวมอยู่ใน Linux ดิสทริบิวชันได้รวมการบีบอัดไว้แล้ว มันสามารถสร้างไฟล์. tar และบีบอัดด้วย gzip หรือ bzip2 ในคำสั่งเดียว นั่นเป็นสาเหตุที่ไฟล์ผลลัพธ์เป็นไฟล์. tar.gz หรือไฟล์. tar.bz2.

    บีบอัดไดเรกทอรีทั้งหมดหรือไฟล์เดียว

    ใช้คำสั่งต่อไปนี้เพื่อบีบอัดไดเรกทอรีทั้งหมดหรือไฟล์เดียวบน Linux มันจะบีบอัดทุกไดเรกทอรีอื่น ๆ ภายในไดเรกทอรีที่คุณระบุในคำอื่น ๆ มันทำงานซ้ำ.

    tar -czvf name-of-archive.tar.gz / path / to / directory-or-file

    นี่คือความหมายของสวิตช์จริง ๆ :

    • -C: Create เก็บถาวร.
    • -z: บีบอัดไฟล์เก็บถาวรด้วย gZIP.
    • -v: แสดงความคืบหน้าในเทอร์มินัลในขณะที่สร้างไฟล์เก็บถาวรหรือที่เรียกว่า“โวลต์โหมด erbose” v เป็นทางเลือกในคำสั่งเหล่านี้เสมอ แต่ก็มีประโยชน์.
    • -f: ช่วยให้คุณระบุ ilename ของไฟล์เก็บถาวร.

    สมมติว่าคุณมีไดเรกทอรีชื่อ“ เนื้อหา” ในไดเรกทอรีปัจจุบันและคุณต้องการบันทึกลงในไฟล์ชื่อ archive.tar.gz คุณจะเรียกใช้คำสั่งต่อไปนี้:

    tar -czvf ไฟล์เก็บถาวร.tar.gz

    หรือสมมติว่ามีไดเรกทอรีที่ / usr / local / บางอย่างในระบบปัจจุบันและคุณต้องการบีบอัดมันเป็นไฟล์ชื่อ archive.tar.gz คุณจะเรียกใช้คำสั่งต่อไปนี้:

    tar -czvf archive.tar.gz / usr / local / something

    บีบอัดหลายไดเรกทอรีหรือไฟล์พร้อมกัน

    แม้ว่า tar จะใช้ในการบีบอัดไดเรกทอรีเดียวบ่อยครั้งคุณยังสามารถใช้เพื่อบีบอัดหลายไดเรกทอรีหลาย ๆ ไฟล์หรือทั้งสองอย่าง เพียงระบุรายการไฟล์หรือไดเรกทอรีแทนที่จะเป็นไฟล์เดียว ตัวอย่างเช่นสมมติว่าคุณต้องการบีบอัดไดเร็กทอรี / home / ubuntu / Downloads, ไดเร็กทอรี / usr / local / stuff และไฟล์ /home/ubuntu/Documents/notes.txt คุณแค่เรียกใช้คำสั่งต่อไปนี้:

    tar -czvf archive.tar.gz / home / ubuntu / ดาวน์โหลด / usr / local / stuff /home/ubuntu/Documents/notes.txt

    เพียงแค่แสดงรายการไดเรกทอรีหรือไฟล์ได้มากเท่าที่คุณต้องการสำรองข้อมูล.

    ไม่รวมไดเร็กทอรีและไฟล์

    ในบางกรณีคุณอาจต้องการบีบอัดไดเรกทอรีทั้งหมด แต่ไม่รวมไฟล์และไดเรกทอรีที่แน่นอน คุณสามารถทำได้โดยการต่อท้าย --ไม่รวม สลับสำหรับแต่ละไดเรกทอรีหรือไฟล์ที่คุณต้องการยกเว้น.

    ตัวอย่างเช่นสมมติว่าคุณต้องการบีบอัด / home / ubuntu แต่คุณไม่ต้องการบีบอัดไดเรกทอรี / home / ubuntu / ดาวน์โหลดและ /home/ubuntu/.cache นี่คือวิธีที่คุณจะทำ:

    tar -czvf archive.tar.gz / home / ubuntu --exclude = / home / ubuntu / ดาวน์โหลด --exclude = / home / ubuntu / .cache

    --ไม่รวม สวิตช์มีประสิทธิภาพมาก ไม่ใช้ชื่อของไดเรกทอรีและไฟล์ - จริง ๆ แล้วมันยอมรับรูปแบบ ยังมีอะไรอีกมากมายที่คุณสามารถทำได้ ตัวอย่างเช่นคุณสามารถเก็บถาวรทั้งไดเร็กทอรีและแยกไฟล์. mp4 ทั้งหมดด้วยคำสั่งต่อไปนี้:

    tar -czvf archive.tar.gz / home / ubuntu --exclude = *. mp4

    ใช้การบีบอัด bzip2 แทน

    ในขณะที่การบีบอัด gzip ใช้บ่อยที่สุดในการสร้างไฟล์. tar.gz หรือ. tgz แต่ tar ยังรองรับการบีบอัด bzip2 สิ่งนี้อนุญาตให้คุณสร้างไฟล์บีบอัด bzip2 ซึ่งมักจะมีชื่อว่า. tar.bz2, .tar.bz หรือ. tbz หากต้องการทำเช่นนั้นเพียงแทนที่ -z สำหรับ gzip ในคำสั่งที่นี่ด้วย -j สำหรับ bzip2.

    Gzip เร็วขึ้น แต่โดยทั่วไปจะบีบอัดได้น้อยลงดังนั้นคุณจะได้ไฟล์ที่ค่อนข้างใหญ่กว่า Bzip2 ช้ากว่า แต่มันบีบอัดอีกเล็กน้อยดังนั้นคุณจะได้ไฟล์ที่เล็กกว่านี้ Gzip นั้นพบได้บ่อยกว่าเช่นกันด้วยระบบ Linux บางส่วนที่รวมถึงการสนับสนุน gzip โดยค่าเริ่มต้น แต่ไม่รองรับ bzip2 โดยทั่วไปแล้วแม้ว่า gzip และ bzip2 จะเหมือนกันจริงและทั้งคู่ก็จะทำงานในทำนองเดียวกัน.

    ตัวอย่างเช่นแทนที่จะเป็นตัวอย่างแรกที่เราให้ไว้สำหรับบีบอัดไดเรกทอรีเนื้อหาคุณจะเรียกใช้คำสั่งต่อไปนี้:

    tar -cjvf archive.tar.bz2 stuff

    แยกไฟล์เก็บถาวร

    เมื่อคุณมีไฟล์เก็บถาวรแล้วคุณสามารถแตกไฟล์ได้ด้วยคำสั่ง tar คำสั่งต่อไปนี้จะแตกเนื้อหาของไฟล์ archive.tar.gz ไปยังไดเรกทอรีปัจจุบัน.

    tar -xzvf archive.tar.gz

    มันเหมือนกับคำสั่งการสร้างไฟล์เก็บถาวรที่เราใช้ด้านบนยกเว้น -x สวิทช์แทนที่ -ค สวิตซ์. สิ่งนี้ระบุว่าคุณต้องการ exผืนที่เก็บถาวรแทนการสร้างหนึ่ง.

    คุณอาจต้องการแยกเนื้อหาของไฟล์เก็บถาวรไปยังไดเรกทอรีที่ระบุ คุณสามารถทำได้โดยการต่อท้าย -C สลับไปยังจุดสิ้นสุดของคำสั่ง ตัวอย่างเช่นคำสั่งต่อไปนี้จะแยกเนื้อหาของไฟล์ archive.tar.gz ไปยังไดเร็กทอรี / tmp.

    tar -xzvf archive.tar.gz -C / tmp

    หากไฟล์นั้นเป็นไฟล์บีบอัด bzip2 ให้แทนที่“ z” ในคำสั่งด้านบนด้วย“ j”.


    นี่เป็นการใช้งานที่ง่ายที่สุดของคำสั่ง tar คำสั่งมีตัวเลือกเพิ่มเติมจำนวนมากดังนั้นเราจึงไม่สามารถแสดงรายการทั้งหมดได้ที่นี่ สำหรับข้อมูลเพิ่มเติม. เรียกใช้ ข้อมูลน้ำมันดิน คำสั่งที่เชลล์เพื่อดูหน้าข้อมูลรายละเอียดของคำสั่ง tar กด Q ปุ่มเพื่อออกจากหน้าข้อมูลเมื่อเสร็จแล้ว คุณสามารถอ่านคู่มือของ tar ออนไลน์ได้.

    หากคุณใช้เดสก์ท็อป Linux แบบกราฟิกคุณสามารถใช้ยูทิลิตีการบีบอัดไฟล์หรือตัวจัดการไฟล์ที่มาพร้อมกับเดสก์ท็อปของคุณเพื่อสร้างหรือแยกไฟล์. tar บน Windows คุณสามารถแตกและสร้างไฟล์เก็บถาวร. tar ด้วยยูทิลิตี้ 7-Zip ฟรี.