Android

คำสั่ง Tar ใน linux (สร้างและแยกไฟล์เก็บถาวร)

Faith Evans feat. Stevie J – "A Minute" [Official Music Video]

Faith Evans feat. Stevie J – "A Minute" [Official Music Video]

สารบัญ:

Anonim

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

เดิมทีทาร์ได้รับการออกแบบมาสำหรับการสร้างคลังเก็บเพื่อจัดเก็บไฟล์บนเทปแม่เหล็กซึ่งเป็นเหตุผลว่าทำไมจึงมีชื่อ“ T ape AR chive”

ในบทช่วยสอนนี้เราจะแสดงวิธีใช้คำสั่ง tar เพื่อแยกรายการและสร้างคลังเก็บ tar ผ่านตัวอย่างการปฏิบัติและคำอธิบายโดยละเอียดเกี่ยวกับตัวเลือก tar ทั่วไป

ไวยากรณ์คำสั่ง Tar

tar มีสองรุ่นคือ BSD tar และ GNU tar ที่มีความแตกต่างในการใช้งาน ระบบ Linux ส่วนใหญ่จะมาพร้อมกับ GNU tar ที่ติดตั้งไว้ล่วงหน้าตามค่าเริ่มต้น

ไวยากรณ์ทั่วไปสำหรับคำสั่ง tar มีดังนี้:

tar

  • OPERATION - อนุญาตอาร์กิวเมนต์การดำเนินการเพียงหนึ่งรายการเท่านั้นที่จำเป็น การดำเนินการที่ใช้บ่อยที่สุดคือ:
    • --create ( -c ) - สร้างไฟล์เก็บถาวร tar ใหม่ - ดึง ( -x ) - แยกไฟล์เก็บถาวรทั้งหมดหรือไฟล์อย่างน้อยหนึ่งไฟล์จากไฟล์เก็บถาวร --list ( -t ) - แสดงรายการไฟล์ที่รวมอยู่ในไฟล์เก็บถาวร
    OPTIONS - การดำเนินการที่ใช้บ่อยที่สุดคือ:
    • --verbose ( -v ) - แสดงไฟล์ที่กำลังประมวลผลโดยคำสั่ง tar --file=archive=name ( -f archive-name ) - ระบุชื่อไฟล์เก็บถาวร
    ARCHIVE_NAME - ชื่อของที่เก็บถาวร FILE_NAME(s) - รายการชื่อไฟล์ที่คั่นด้วยช่องว่างที่จะแยกจากไฟล์เก็บถาวร หากไม่ได้ระบุข้อมูลทั้งหมดจะถูกแยกออกมา

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

การสร้างที่เก็บถาวรของ Tar

Tar สนับสนุนโปรแกรมบีบอัดที่หลากหลายเช่น gzip , bzip2 , lzip , lzma , lzop , xz และการ compress เมื่อสร้างไฟล์เก็บถาวร tar ที่บีบอัดเป็นข้อตกลงที่ยอมรับได้เพื่อต่อท้ายส่วนต่อท้ายของคอมเพรสเซอร์กับชื่อไฟล์เก็บถาวร ตัวอย่างเช่นหากไฟล์เก็บถาวรได้รับการบีบอัดด้วย gzip นั้นควรจะมีชื่อว่า archive.tar.gz

ในการสร้างไฟล์เก็บถาวร tar ให้ใช้ตัวเลือก -c ตามด้วย -f และชื่อของไฟล์เก็บถาวร

ตัวอย่างเช่นหากต้องการสร้างไฟล์เก็บถาวรชื่อ archive.tar จากไฟล์ชื่อ file1 , file2 , file3 คุณจะต้องรันคำสั่งต่อไปนี้:

tar -cf archive.tar file1 file2 file3

นี่คือคำสั่งเทียบเท่าโดยใช้ตัวเลือกแบบยาว:

tar --create --file=archive.tar file1 file2 file3

คุณสามารถสร้างไฟล์เก็บถาวรจากเนื้อหาของหนึ่งหรือมากกว่าหนึ่งไดเรกทอรีหรือไฟล์ โดยค่าเริ่มต้นไดเรกทอรีจะถูกเก็บถาวรซ้ำเว้นแต่ว่าจะไม่มี --no-recursion ระบุตัวเลือกการ --no-recursion

ตัวอย่างต่อไปนี้จะสร้างไฟล์เก็บถาวรที่ชื่อ user_backup.tar ของ user_backup.tar /home/user :

tar -cf backup.tar /home/user

ใช้อ็อพชัน -v หากคุณต้องการดูไฟล์ที่กำลังถูกประมวลผล

สร้าง Tar Gz Archive

Gzip เป็นอัลกอริทึมที่นิยมที่สุดสำหรับการบีบอัดไฟล์ tar เมื่อบีบอัดไฟล์เก็บถาวร tar ด้วย gzip ชื่อไฟล์เก็บถาวรควรลงท้ายด้วย tar.gz หรือ tgz

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

tar -czf archive.tar.gz file1 file2

สร้าง Tar Bz2 Archive

อีกวิธียอดนิยมสำหรับการบีบอัดไฟล์ tar คือ bzip2 เมื่อบีบอัดไฟล์เก็บถาวร tar ด้วย bzip2 ชื่อไฟล์เก็บถาวรควรลงท้ายด้วย tar.bz2 หรือ tbz

เมื่อระบุอ็อพชัน -j tar จะใช้อัลกอริทึม bzip2 เพื่อบีบอัดไฟล์เก็บถาวร คำสั่งต่อไปนี้จะสร้าง tar.bz2 เก็บถาวร tar.bz2 จากไฟล์ที่กำหนด:

tar -cjf archive.tar.bz2 file1 file2

รายการคลังเก็บ Tar

เมื่อใช้กับตัวเลือก --list ( -t ) คำสั่ง tar จะแสดงรายการเนื้อหาของไฟล์เก็บถาวร tar โดยไม่แตกไฟล์ ร้องคำสั่งจะแสดงรายการเนื้อหาของไฟล์ archive.tar :

tar -tf archive.tar ผลลัพธ์จะแสดงชื่อของไฟล์ทั้งหมดในไฟล์เก็บถาวร:

file1 file2 file3

ในการรับข้อมูลเพิ่มเติมเช่นเจ้าของไฟล์ขนาดไฟล์การประทับเวลาให้ใช้ตัวเลือก --verbose ( -v ):

tar -tvf archive.tar

-rw-r--r-- linuxize/users 0 2018-09-08 01:19 file1 -rw-r--r-- linuxize/users 0 2018-09-08 01:19 file2 -rw-r--r-- linuxize/users 0 2018-09-08 01:19 file3

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

ไฟล์ที่เก็บถาวรส่วนใหญ่ใน Linux ถูกเก็บถาวรและบีบอัดโดยใช้รูปแบบ tar หรือ tar.gz การรู้วิธีแยกไฟล์เหล่านี้จากบรรทัดคำสั่งเป็นสิ่งสำคัญ

ในการแตกไฟล์เก็บถาวร tar ให้ใช้ตัวเลือก --extract ( -x ) ตามด้วยชื่อไฟล์เก็บถาวร:

tar -xf archive.tar

เป็นเรื่องปกติที่จะเพิ่มตัวเลือก -v เพื่อพิมพ์ชื่อของไฟล์ที่กำลังแตกไฟล์

tar -xvf archive.tar

แตกไฟล์เก็บถาวร Tar ในไดเรกทอรีอื่น

โดยค่าเริ่มต้น tar จะแยกเนื้อหาที่เก็บถาวรในไดเรกทอรีการทำงานปัจจุบัน ใช้ --directory ( -C ) เพื่อแยกไฟล์เก็บถาวรในไดเรกทอรีเฉพาะ:

ตัวอย่างเช่นหากต้องการแยกเนื้อหาที่เก็บถาวรลงในไดเร็กทอรี /opt/files คุณสามารถใช้:

tar -xf archive.tar -C /opt/files

แยก Tar Gz และ Tar Bz2 Archives

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

tar -xf archive.tar.gz

tar -xf archive.tar.bz2

แตกไฟล์เฉพาะจาก Tar เก็บถาวร

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

หากต้องการแตกไฟล์เฉพาะจากไฟล์เก็บถาวร tar ให้ผนวกรายการชื่อไฟล์ที่คั่นด้วยช่องว่างที่จะแตกหลังชื่อไฟล์เก็บถาวร:

tar -xf archive.tar file1 file2

เมื่อแตกไฟล์คุณต้องระบุชื่อที่แน่นอนรวมถึงพา ธ ตามที่พิมพ์โดย --list ( -t )

การแตกหนึ่งหรือหลายไดเร็กทอรีจากไฟล์เก็บถาวรเหมือนกับการแตกไฟล์:

tar -xf archive.tar dir1 dir2

tar -xf archive.tar README

tar: README: Not found in archive tar: Exiting with failure status due to previous errors

แยกไฟล์จาก Tar Archive โดยใช้ Wildcard

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

ตัวอย่างเช่นหากต้องการแตกไฟล์ที่ชื่อลงท้ายด้วย. .js (ไฟล์ Javascript) คุณสามารถใช้:

tar -xf archive.tar --wildcards '*.js'

การเพิ่มไฟล์ไปยังไฟล์เก็บถาวร Tar ที่มีอยู่

หากต้องการเพิ่มไฟล์หรือไดเรกทอรีลงในไฟล์เก็บถาวร tar ที่มีอยู่ให้ใช้การดำเนินการ --append ( -r )

ตัวอย่างเช่นหากต้องการเพิ่มไฟล์ชื่อ newfile ไปยัง archive.tar คุณจะต้องรัน:

tar -rvf archive.tar newfile

การลบไฟล์ออกจาก Tar Archive

ใช้การดำเนินการ --delete เพื่อลบไฟล์ออกจากไฟล์เก็บถาวร

ตัวอย่างต่อไปนี้แสดงวิธีลบไฟล์ file1 จากไฟล์เก็บ file1 tar,:

tar --delete -f archive.tar file1

ข้อสรุป

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

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับคำสั่ง tar ให้ดูที่หน้าเอกสารคู่มือ Gnu tar

เทอร์มินัลน้ำมันดิน