Come posso comprimere / comprimere un link simbolico?


Risposte:


68

È possibile archiviare i collegamenti simbolici come collegamenti simbolici (anziché una copia del file / directory a cui puntano) utilizzando il --symlinksparametro dello standard zip.

Supponendo che foosia una directory contenente collegamenti simbolici:

zip --symlinks -r foo.zip foo/

Rar equivalente:

rar a -ol foo.rar foo/

tar li memorizza come di default.

tar czpvf foo.tgz foo/

Si noti che il collegamento simbolico non occupa quasi spazio su disco da solo (solo un inode). È solo una specie di puntatore nel filesystem, come probabilmente saprai.


1
non posso usare tar, ma il --symlink non funziona con zip. sei sicuro che sia il pacchetto zip predefinito?
— DucDigital

Quale distribuzione hai? Copyright (c) 1990-2008 Info-ZIP - Type 'zip "-L"' for software license. Zip 3.0 (July 5th 2008).Puoi usare rar invece? Vedi esempio aggiunto.
— Eduardo Ivanec,

Copyright (c) 1990-2006 Info-ZIP. Tutti i diritti riservati. Questo è Zip 2.32 probabilmente per questo. proverò
— raramente

1
Dividere i peli, ma tecnicamente il collegamento simbolico occupa spazio su disco, consumando un inode.
— ttyS0,

Vero che. In realtà da quello che ho letto in passato erano persino più simili ai normali file contenenti il ​​percorso del file / directory appuntito. Ora sono solo un tipo speciale di inode se ricordo bene.
— Eduardo Ivanec,

10

Su RHEL 5, abbiamo

$ 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

Lo stesso su OpenSUSE Leap. Quindi è davvero zip -y -r foo.zip foo/.
— David Faure,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.