Estoy tratando de comprimir una carpeta en un archivo .7z. Esta carpeta contiene enlaces simbólicos a otras cosas fuera de la carpeta (tanto directorios como archivos).
Aparentemente, 7zip solo archiva el enlace en sí, que no es lo que pretendía. ¿Hay alguna manera de decirle a 7zip que quiero que archive las cosas a las que enlaza, no el enlace en sí? (Es decir, si hay un nombre de enlace simbólico fooque apunta C:\stuff\foo, quiero que incluya el C:\stuff\foodirectorio en el archivo en lugar de foo, no un enlace simbólico de 0 bytes).
¿Hay alguna solución razonable aparte de agregar los archivos y carpetas en cuestión? Hay alrededor de 10,000 archivos referenciados a través de enlaces simbólicos, por lo que agregarlos todos individualmente tomaría horas ... Tal vez hay un programa que crea una carpeta provisional con los archivos reales y luego los pasa a 7zip. O simplemente un archivador que maneja mejor los enlaces simbólicos.
Estoy ejecutando Windows Vista. Todos los enlaces son enlaces simbólicos (por ejemplo, creados con mklink link targety mklink /D link target).
EDITAR:
dir salida de comando para un directorio de prueba más pequeño:
C:\...>dir
Volume in drive C is OS
Volume Serial Number is 0A3D-CD6E
Directory of C:\...
09/04/2010 18:12 <DIR> .
09/04/2010 18:12 <DIR> ..
09/04/2010 18:10 975 real file.txt
09/04/2010 18:11 <SYMLINK> test file.txt [..\test file.txt]
2 File(s) 975 bytes
4 Dir(s) 5,214,355,456 bytes free
La creación de un archivo 7z con los resultados de 7zip real file.txtse incluye, pero test file.txtse agrega como un archivo de 0 bytes, aunque el archivo vinculado a existe y es de 50 KB.
fuente

Respuestas:
No, aparentemente no (desafortunadamente). En realidad, hay un informe de error en 7zip solicitando esto: http://sourceforge.net/tracker/?func=detail&aid=2846755&group_id=14481&atid=114481 pero se abrió en agosto de 2009 y no se tocó desde: - /.
Bueno, si tiene suficiente espacio (y tiempo), puede hacer una copia de la carpeta, reemplazando los enlaces simbólicos con sus objetivos. Puede, por ejemplo, usar Robocopy y su interruptor
/sl:Nota: Sólo para evitar confusiones, nota que la acumulación de Linux p7zip (un puerto de 7zip) también tiene un sistema binario
7z, que hace de soporte archivar el archivo apunta un enlace simbólico a (interruptor-l). Sin embargo, 7zip en Windows no tiene este interruptor.fuente
-lconmutador. zip y gzip también lo hacen con sus comandos específicos.Si está utilizando Vista y superior, elimine los enlaces simbólicos y reemplácelos por enlaces mk
Tenga en cuenta que mklink es bastante potente y puede incluir enlaces a recursos compartidos de red y similares.
Como parece haber cierta confusión al respecto, permítanme aclararlo. Supongo que el OP en realidad está hablando de Junctions como se ilustra aquí http://en.wikipedia.org/wiki/NTFS_junction_point . Mklink no hace cruces . Hace verdaderos enlaces simbólicos y lo probé yo mismo y 7zip los respeta perfectamente. Además, debe ser administrador para crear enlaces simbólicos mklink.
7zip archivará GB, pero NO archivará GB2. EDITAR: En realidad, más pruebas muestran que 7zip archivará ambos directorios con la versión 4.65. Así que no tengo idea de cuál es el problema.
fuente