Як я можу зіткнути / стиснути символьне посилання?


Відповіді:


68

Ви можете зберігати посилання як символьні посилання (на відміну від копії файлу / каталогу, на які вони вказують), використовуючи --symlinksпараметр стандарту zip.

Припустимо foo, це каталог, що містить символьні посилання:

zip --symlinks -r foo.zip foo/

Рівний еквівалент:

rar a -ol foo.rar foo/

tar зберігає їх за замовчуванням.

tar czpvf foo.tgz foo/

Зауважте, що символьна посилання сама по собі не займає дискового простору (лише вкладка). Це просто певний вказівник у файловій системі, як ви, мабуть, знаєте.


1
я не можу використовувати tar, але --symlinks не працює з блискавкою. Ви впевнені, що це ZIP-пакет за замовчуванням?
DucDigital

Який розподіл у вас є? Copyright (c) 1990-2008 Info-ZIP - Type 'zip "-L"' for software license. Zip 3.0 (July 5th 2008).Чи можете ви замість цього використовувати rar? Дивіться доданий приклад.
Едуардо Іванець

Авторське право (c) 1990-2006 Info-ZIP. Всі права захищені. Це Zip 2.32, ймовірно, через це. я спробую rar
DucDigital

1
Розщеплення волосся, але в технічному відношенні симпосилання займає дисковий простір, використовуючи inode.
ttyS0

Правда, що. Насправді з того, що я читав у минулому, вони були навіть більше схожі на звичайні файли, що містять шлях до вказаного файлу / каталогу. Тепер вони просто особливий вид inode, якщо я правильно пам’ятаю.
Едуардо Іванець

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/.
Девід Форе
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.