ฉันจะซิป / บีบอัด symlink ได้อย่างไร


คำตอบ:


68

คุณสามารถจัดเก็บ symlinks เป็น symlinks (เมื่อเทียบกับสำเนาของแฟ้ม / ไดเรกทอรีพวกเขาชี้ไปที่) โดยใช้พารามิเตอร์ของมาตรฐาน--symlinkszip

สมมติว่าfooเป็นไดเรกทอรีที่มี symlink:

zip --symlinks -r foo.zip foo/

Rar เทียบเท่า:

rar a -ol foo.rar foo/

tar เก็บพวกเขาตามที่เป็นค่าเริ่มต้น

tar czpvf foo.tgz foo/

โปรดทราบว่า symlink ใช้พื้นที่ดิสก์เกือบจะไม่มีตัวมันเอง (แค่ inode) มันเป็นเพียงตัวชี้ในระบบไฟล์อย่างที่คุณอาจจะรู้


1
ฉันไม่สามารถใช้ tar ได้ แต่ --symlinks ไม่ทำงานกับ zip คุณแน่ใจหรือว่าเป็นแพ็คเกจซิปเริ่มต้น
DucDigital

คุณมีการกระจายแบบไหน Copyright (c) 1990-2008 Info-ZIP - Type 'zip "-L"' for software license. Zip 3.0 (July 5th 2008).คุณสามารถใช้ rar แทนได้หรือไม่? ดูตัวอย่างที่เพิ่มเข้ามา
Eduardo Ivanec

ลิขสิทธิ์ (c) 1990-2006 Info-ZIP สงวนลิขสิทธิ์. นี่คือ Zip 2.32 อาจเป็นเพราะนี่ ฉันจะลอง rar
DucDigital

1
การแตกขน แต่ในทางเทคนิคแล้ว symlink นั้นใช้พื้นที่ว่างในดิสก์มาก
ttyS0

จริงที่ ที่จริงแล้วจากสิ่งที่ฉันอ่านในอดีตพวกเขาเป็นเหมือนไฟล์ปกติที่มีพา ธ ไปยังไฟล์ / ไดเร็กทอรีแหลม ตอนนี้มันเป็นไอโหนดพิเศษถ้าฉันจำได้ถูกต้อง
Eduardo Ivanec

10

ใน RHEL 5 เรามี

$ zip -h
Copyright (C) 1990-2005 Info-ZIP
Type 'zip "-L"' for software license.
Zip 2.31 (March 8th 2005). Usage:
zip [-options] [-b path] [-t mmddyyyy] [-n suffixes] [zipfile list] [-xi list]
(snip)
  -y   store symbolic links as the link instead of the referenced file

เหมือนกันใน OpenSUSE Leap zip -y -r foo.zip foo/ดังนั้นจึงเป็นที่แน่นอน
David Faure
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.