จะแยก/แตกไฟล์ .tar.gz ได้อย่างไร [ลินุกซ์และวินโดวส์]

เผยแพร่แล้ว: 2024-01-26

สารบัญ
ไฟล์ tar.gz คืออะไร
ฉันจะแตกไฟล์. tar.gz ใน Linux ได้อย่างไร
แตกไฟล์ tar gz Windows 10
แก้ไขปัญหาข้อผิดพลาดขณะแตกไฟล์ .tar.gz
สรุป
คำถามที่พบบ่อย

ไฟล์ tar.gz คืออะไร

ไฟล์ .tar.gz หรือที่เรียกว่า tarball เป็นรูปแบบไฟล์พิเศษที่ประกอบด้วยชุดของไฟล์ที่บีบอัดเป็นไฟล์เก็บถาวรเดียว รูปแบบไฟล์เฉพาะนี้มักใช้ในระบบปฏิบัติการ Unix และ Linux

มันถูกสร้างขึ้นโดยการรวมหลายไฟล์หรือไดเร็กทอรีเป็นไฟล์เดียวแล้วบีบอัดโดยใช้การบีบอัด gzip

คุณอาจสงสัยว่าคำว่า tar มาจากไหน และคำว่า "tar" นั้นมาจาก Tape Archiver ซึ่งแต่เดิมใช้สำหรับการจัดเก็บเทปแม่เหล็ก

เช่นเดียวกับไฟล์ .zip ที่คุณอาจเคยได้ยินและเคยใช้ ไฟล์ .tar ยังใช้ในการบีบอัดไฟล์ขนาดใหญ่ให้เป็นแพ็คเกจเดียว ทำให้สะดวกในการจัดเก็บและส่งผ่านช่องทางต่างๆ เช่น อีเมล เซิร์ฟเวอร์ ฯลฯ

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

ความแตกต่างระหว่างไฟล์ .Zip และไฟล์ .Tar

เพื่อให้เข้าใจถึงความแตกต่างหลักระหว่างสองสิ่งนี้ได้ดีขึ้น วิธีที่ดีที่สุดคือการรู้จากคำจำกัดความง่ายๆ

ไฟล์ .tar คืออะไร

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

ไฟล์ .tar.gz คืออะไร

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

ไฟล์ GZ คืออะไร?

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

ไฟล์ .zip คืออะไร

ในไฟล์ .zip คุณจะพบคอลเลกชั่นของไฟล์บีบอัดแทน ต่างจากไฟล์ .tar ตรงที่ .zip ไม่จำเป็นต้องมีการบีบอัดใดๆ ในตอนแรก และจะบีบอัดแต่ละไฟล์ภายในคอลเลกชัน

.ZIP กับ .TAR

คุณสมบัติ ไฟล์ .zip ไฟล์ .tar
อัลกอริธึมการบีบอัด การบีบอัดไฟล์ ZIP ใช้สำหรับการเก็บถาวรเป็นหลัก (ไม่ใช่การบีบอัดด้วยตัวเอง)
ความเข้ากันได้ข้ามแพลตฟอร์ม รองรับอย่างกว้างขวางบน Windows, macOS, Linux การสนับสนุนดั้งเดิมบนระบบที่เหมือน Unix (Linux, macOS) ต้องใช้เครื่องมือเพิ่มเติมในบางแพลตฟอร์ม
ระดับการบีบอัด มีความสมดุลที่ดีระหว่างอัตราส่วนกำลังอัดและความเร็ว โดยทั่วไปแล้วจะเป็นกระบวนการขั้นตอนเดียวสำหรับทั้งการบีบอัดและการเก็บถาวร
โครงสร้างไฟล์และไดเร็กทอรี รักษาทั้งโครงสร้างไฟล์และไดเร็กทอรี มุ่งเน้นไปที่การรักษาโครงสร้างไดเร็กทอรีเป็นหลัก การบีบอัดเป็นขั้นตอนแยกต่างหากเมื่อใช้ .tar เพียงอย่างเดียว
อนุสัญญาการตั้งชื่อ ใช้นามสกุลไฟล์ .zip ใช้นามสกุลไฟล์ .tar เมื่อไม่มีการบีบอัด ส่วนขยายเพิ่มเติม เช่น .tar.gz หรือ .tar.bz2 เมื่อบีบอัด
กระบวนการขั้นตอนเดียว / สองขั้นตอน โดยทั่วไปแล้วจะเป็นกระบวนการขั้นตอนเดียวสำหรับทั้งการบีบอัดและการเก็บถาวร การเก็บถาวรและการบีบอัดเป็นขั้นตอนที่แยกจากกันเมื่อใช้ .tar เพียงอย่างเดียว
.Zip กับ .Tar

ไฟล์ทั้งสองรูปแบบมีแอปพลิเคชันของตัวเองและขึ้นอยู่กับความต้องการเฉพาะ ข้อกำหนดด้านความเข้ากันได้ และแพลตฟอร์มเป้าหมายของคุณ

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


ฉันจะแตกไฟล์. tar.gz ใน Linux ได้อย่างไร

สำหรับข้อมูลของคุณ Linux จำนวนมาก เช่น Ubuntu และ MacOS มีเครื่องมือในตัวสำหรับการบีบอัดและแตกไฟล์ .tar และ .tar.gz

แม้ว่าสำหรับงานส่วนใหญ่ ยูทิลิตี้ tar ก็เพียงพอแล้ว คุณจะต้องมียูทิลิตี้ gzip เพื่อสร้างไฟล์ .tar.gz ด้วย

แตกไฟล์ .tar.gz ใน Linux โดยใช้ยูทิลิตี้ tar

ในระบบปฏิบัติการ Linux สิ่งแรกที่คุณต้องทำคือเปิด Terminal โดยกดคีย์เวิร์ด CTRL+ALT+T พร้อมกันแล้วป้อนคำสั่งด้านล่าง:

1. แยก .tar.gz ไปยังไดเร็กทอรีการทำงานปัจจุบัน และพิมพ์ผลลัพธ์ออกมา

tar -xf Yourfile.tar.gz

ในคำสั่งข้างต้น

  • คำสั่ง "Tar" จะจัดการไฟล์เก็บถาวร tar
  • ตัวเลือก “-x” จะบอก “tar” ให้แตกไฟล์
  • “-f” ระบุไฟล์ที่จะแตกไฟล์ ในคำสั่งข้างต้น ตามด้วย yourfile.tar.gz ซึ่งแสดงชื่อของไฟล์ tarball ที่ถูกบีบอัด

เมื่อคุณรันคำสั่งนี้ มันจะแยกเนื้อหาของไฟล์ tarball โดยเฉพาะ เช่น “Yourfile.tar.gz” ลงในไดเร็กทอรีการทำงานปัจจุบัน

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

หากต้องการพิมพ์เอาท์พุตให้ป้อนคำสั่งด้านล่าง:

tar -xvf Yourfile.tar.gz

2. การแยกไฟล์ .tar.gz ไปยังไดเร็กทอรีการทำงานอื่น

tar -xf Yourfile.tar.gz -C /home/user/files

3. แตกไฟล์ออกจากไฟล์ tar ที่ถูกบีบอัดโดยใช้ gzip

tar –xvzf Yourfile.tar.gz

  • tar : นี่คือคำสั่งพื้นฐานสำหรับการทำงานกับไฟล์เก็บถาวร tar
  • -x : ย่อมาจาก extract ซึ่งหมายความว่าคุณต้องการแตกไฟล์จากไฟล์เก็บถาวร
  • -v : ย่อมาจาก verbose ซึ่งให้รายละเอียดเพิ่มเติมเกี่ยวกับกระบวนการแตกไฟล์ โดยแสดงชื่อของไฟล์ในขณะที่แตกไฟล์
  • -z : บ่งชี้ว่าไฟล์เก็บถาวรถูกบีบอัดโดยใช้ gzip
  • -f : ระบุชื่อไฟล์ของไฟล์เก็บถาวร

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

4. ในกรณีที่คุณต้องการดูรายการเนื้อหาในไฟล์ .tar ก่อนที่จะแตกไฟล์ ให้ป้อนคำสั่งด้านล่าง:

tar –tzf Yourfile.tar.gz

5 . หากคุณต้องการใส่ไฟล์ที่คลายซิปแล้วลงในไดเร็กทอรีเฉพาะ ให้ป้อนคำสั่งต่อไปนี้:

tar –xvzf Yourfile.tar.gz –C /home/user/destination

6. หากคุณต้องการแยกเฉพาะไฟล์หรือไดเร็กทอรีจากไฟล์ .tar.gz

สมมติว่าคุณต้องการแยกไฟล์บางไฟล์ว่า "Yourfile" และไดเร็กทอรีพูดว่า "Directory1" จากไฟล์ .tar.gz ไปยังไดเร็กทอรีการทำงานปัจจุบัน ในกรณีนี้ คำสั่งควรจะเป็นดังนี้

tar -xf Yourfile.tar.gz file1 directory1

สิ่งที่คุณต้องทำก็แค่เพิ่มช่องว่างระหว่างไฟล์ที่คุณต้องการแตกไฟล์

หมายเหตุ: โปรดระบุชื่อไฟล์ให้ถูกต้องในคำสั่ง ไม่เช่นนั้นจะแสดงข้อผิดพลาด ดังนั้น ตรวจสอบชื่อไฟล์ที่แสดงอยู่ในไฟล์ .tar เพื่อดูเนื้อหาของ. tar คุณสามารถใช้คำสั่ง “tar –tzf Yourfile.tar.gz” ได้

7. หากคุณต้องการแยกไฟล์นามสกุลหรือชื่อบางประเภท ให้ใช้คำสั่งต่อไปนี้:

tar -xf Yourfile.tar.gz --wildcards '*.txt'

คำสั่งนี้จะแตกไฟล์นามสกุล .txt ทั้งหมดจากไฟล์ .tar.gz

8. หากคุณต้องการสร้างไฟล์ .tar.gz แทน ให้ป้อนคำสั่งด้านล่าง:

tar –cvzf NewFile.tar.gz ~/Documents

คำสั่งนี้จะสร้างไฟล์เก็บถาวร tar ที่บีบอัดของเนื้อหาของไดเร็กทอรี ~/Documents เช่น ซึ่งอยู่ที่ไดเร็กทอรี /home/user/Documents ให้เป็นไฟล์เดียว NewFile.tar.gz

9. เพิ่มหลายไฟล์ลงในไฟล์ tar

tar -cvf Yourfile.tar ~/Documents

คำสั่งนี้จะเพิ่มไฟล์โดยการคัดลอกเนื้อหาในโฟลเดอร์เอกสารของคุณลงใน Yourfile.tar

การแยกไฟล์ .tar.gz โดยใช้ยูทิลิตี้ gzip

คำสั่ง Gzip ใช้สำหรับการบีบอัดและขยายขนาดไฟล์โดยเฉพาะ อย่างไรก็ตาม ในกรณีที่คุณต้องการแยกไฟล์ .tar.gz คุณต้องใช้คำสั่ง tar และคำสั่ง gzip ร่วมกัน

Gzip โดยค่าเริ่มต้น จะแตกไฟล์ในไดเร็กทอรีปัจจุบัน

gzip -d yourfile.tar.gz

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

การแยกไฟล์ .tar.gz โดยใช้ stdin

หากคุณมีไฟล์ tar.gz ที่ต้องการแยกจากอินพุตมาตรฐาน (stdin) คุณสามารถใช้คำสั่ง tar พร้อมกับตัวเลือก -z เพื่อคลายการบีบอัดได้

มาทำความเข้าใจเรื่องนี้ด้วยตัวอย่าง สมมติว่าเราจำเป็นต้องดาวน์โหลดไฟล์จาก URL 'www.wpoven.com/yourfile' ในกรณีนี้ เราสามารถใช้คำสั่ง wget และไพพ์เอาต์พุตไปยังคำสั่ง tar

wget -c https://Wpoven.com/Yourfile.tar.gz -O - | sudo tar -xz


แตกไฟล์ tar gz Windows 10

สำหรับผู้ใช้ Windows 10 คุณอาจแปลกใจที่รู้ว่าเช่นเดียวกับระบบปฏิบัติการ macOS และ Linux Windows ก็ให้ยูทิลิตี้แก่คุณเช่นกัน

ไม่ต้องสงสัยเลยว่า Windows มีอินเทอร์เฟซผู้ใช้แบบกราฟิกที่สะดวกและใช้งานง่ายกว่าสำหรับการคลายซิปและแตกไฟล์ .zip แต่สำหรับไฟล์ tar คุณจะต้องมีบรรทัดคำสั่งและเพื่อให้พร้อมท์คำสั่งนั้นพร้อมใช้งาน

แตกไฟล์ .tar.gz โดยใช้พรอมต์คำสั่งใน Windows

พรอมต์คำสั่งมีอยู่ในอุปกรณ์ Windows ทุกรุ่นไม่ว่าคุณจะใช้เวอร์ชันใดก็ตาม สิ่งที่คุณต้องทำคือเปิดพรอมต์คำสั่งโดยทำตามขั้นตอนด้านล่าง

  • กดปุ่ม Windows + R บนแป้นพิมพ์ของคุณ
  • นี่จะเป็นการเปิดกล่องเล็ก ๆ สำหรับ Run Commands
Open Cmd
เปิดคำสั่ง
  • ป้อน CMD ลงในช่องแล้วกด Enter
  • มันจะเปิดหน้าจอพร้อมรับคำสั่งและเรียกใช้ในฐานะผู้ดูแลระบบ
Command Prompt

และป้อนคำสั่งต่อไปนี้

หากต้องการแยกไฟล์ .tar.gz ไปยังไดเร็กทอรีการทำงานปัจจุบัน ให้ป้อนคำสั่งด้านล่างแล้วกดปุ่ม "Enter"

tar -xvzf Yourfile.tar.gz

หากคุณต้องการแตกไฟล์.tar.gz จากพาธต้นทางไปยัง พาธปลายทาง ให้ป้อนคำสั่งต่อไปนี้:

tar -xvzf C:\PATH\TO\SOURCE\YourFile.tar.gz -CC:\PATH\TO\DESTINATION

คุณอาจสังเกตเห็นว่าคำสั่งในระบบปฏิบัติการทั้ง Windows และ Linux เกือบจะเหมือนกัน

หรือหากคุณไม่คุ้นเคยกับบรรทัดคำสั่งและต้องการใช้วิธีที่ง่ายกว่าและง่ายกว่าสำหรับเครื่องมือของบุคคลที่สาม

มีเครื่องมือมากมายให้เลือก บางตัวก็ฟรี และบางตัวก็ให้ทดลองใช้ฟรี เช่น WinZip แต่มันมีน้ำหนักเบาและคุ้มค่าที่จะลอง


แก้ไขปัญหาข้อผิดพลาดขณะแตกไฟล์ .tar.gz

อาจเป็นไปได้ว่าในบางช่วงเวลาหรือขณะป้อนคำสั่ง คุณอาจพบข้อผิดพลาดบางประการ เพื่อช่วยเหลือคุณในเรื่องนี้ ต่อไปนี้คือขั้นตอนการแก้ปัญหาบางส่วนที่คุณสามารถปฏิบัติตามได้สำหรับข้อผิดพลาดทั่วไปบางประการ:

1. หากเอาต์พุตแสดงข้อความแสดงข้อผิดพลาด:

tar: Archive is compressed. Use -z option
tar: Error is not recoverable: exiting now

วิธีแก้ไข: หากคุณได้รับข้อความแสดงข้อผิดพลาด แสดงว่าคุณได้พลาด "-z" ในคำสั่งที่ป้อน

ตัวอย่างเช่น หากคุณได้ป้อน:

wget -c https://WPOven.com/Yourfile.tar.gz -O - | sudo tar -x

คุณต้องพูดถึงตัวเลือกการบีบอัดข้อมูลโดยเฉพาะ เช่น gzip (-z) ในคำสั่ง tar ด้านบน เช่น “ Sudo tar -xz ” ทางด้านขวาสุด

2. หากเอาต์พุตแสดงข้อความแสดงข้อผิดพลาด:

tar: FILE: Not found in filename
tar: Exiting with failure status due to previous errors

หมายความว่าคุณป้อนชื่อไฟล์ผิดหรือไม่มีไฟล์อยู่ในไฟล์ .tar.gz

วิธีแก้ไข : คุณต้องตรวจสอบชื่อไฟล์ และการสะกดคำ และตรวจสอบให้แน่ใจว่าไฟล์นั้นมีอยู่ในไฟล์ .tar.gz


สรุป

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

หากการใช้บรรทัดคำสั่งไม่ใช่สิ่งที่คุณชอบใจ คุณสามารถเลือกใช้ตัวเลือกอื่น เช่น เครื่องมือสกัดได้


คำถามที่พบบ่อย

ฉันจะแตกไฟล์ tar GZ ในบรรทัดคำสั่ง Linux ได้อย่างไร

คุณสามารถแตกไฟล์ tar GZ ใน Linux ได้ง่ายๆ เพียงป้อนโค้ด “ tar -xf Yourfile.tar.gz ” ใน Terminal แล้วกด Enter

คุณสามารถแตกไฟล์ tar GZ ใน Windows ได้หรือไม่?

Windows มาพร้อมกับ tar-utility ในตัวและคุณต้องใช้พรอมต์คำสั่ง หากต้องการแตกไฟล์ tar gz ใน Windows ให้ใช้คำสั่งต่อไปนี้:
tar -xvzf Yourfile.tar.gz

tar เป็นไฟล์ประเภทใด

ไฟล์ tar ถูกสร้างขึ้นโดยคำสั่ง tar และใช้เพื่อรวมไฟล์และไดเร็กทอรีหลาย ๆ ไฟล์ไว้ในไฟล์เดียว มันไม่ได้บีบอัดข้อมูล มันก็เก็บถาวรมัน