Comprimir sin .DS_Store y __MACOSX

11

Cuando comprimo una carpeta o archivo haciendo clic derecho en el menú de Mac OS X, el archivo archivado contiene .DS_Store y __MAC OS X carpetas Debido a que comparto el archivo archivado en línea para descargarlo, los usuarios de Windows intentan buscar el archivo por error. __MAC OS X carpeta.

Necesito tener una opción de archivo más limpia. No quiero incluir .DS_Store y __MAC OS X carpeta, pero solo el archivo o carpeta en el archivo comprimido.

Todo lo que encontré es CleanArchiver pero es una aplicación GUI. Realmente toma tiempo y tengo muchos archivos para comprimir. Estoy buscando una solución por menú contextual si es posible.

¿Hay alguna solución que pueda recomendar para la compresión limpia?

John Bernard
fuente

Respuestas:

18

Puede usar el comando zip en la Terminal para comprimir los archivos sin la .DS_Store , __MAC OS X y otros archivos. *.

Terminal abierta (búsqueda de terminal en foco)
Navegue a la carpeta que desea comprimir usando el comando cd
Pegar esto zip -r dir.zip . -x ".*" -x "__MACOSX"

Ejemplo: Digamos que tienes una carpeta en tu escritorio llamada Carpeta con cosas para comprimir.
Abre el terminal y escribe los siguientes comandos:
cd Desktop/Folder
zip -r dir.zip . -x ".*" -x "__MACOSX"

Ahora tienes un archivo llamado dir.zip sin __MAC OS X y. * archivos en la carpeta Carpeta en su escritorio.

iTunes
fuente
1
+1 ¿Puedes envolver eso en un servicio de automator?
fd0
2
Técnicamente hablando, si usas zip para crear el archivo zip, "__MACOSX /" no se creará en primer lugar, por lo que todo lo que realmente necesita es zip -r dir.zip .. Sin embargo, si "__MACOSX /" de alguna manera se coló allí, su solución se deshará de él.
Edward Falk
1
También puede verificar fácilmente que su archivo zip no tiene __MACOSX en él escribiendo en la consola zipinfo dir.zip
Fostah
7

Sólo un poco de información adicional ...

Según entiendo, __MACOSX es un subdirectorio creado artificialmente por las herramientas de la GUI de Mac para almacenar metadatos, como atributos extendidos que normalmente no se pueden guardar en un archivo zip.

Si utiliza las herramientas de la GUI de Mac para descomprimir el archivo zip, las herramientas sabrán qué hacer con __MACOSX y el directorio no se descomprimirá.

Los problemas ocurren cuando envía su archivo .zip a usuarios de Windows o Linux, o simplemente usa el propósito general unzip Programa para descomprimirlos. Esas herramientas no sabrán que __MACOSX es especial y solo lo desempaquetarán.

La opción más simple es usar zip para empacar su archivo zip en lugar de la herramienta integrada de Mac. zip no creará __MACOSX y su problema se resolverá. (Perderá los metadatos en el proceso, pero probablemente no lo quería de todos modos).

zip -r dir.zip .

Si es demasiado tarde y ya tiene un archivo zip con __MACOSX, aún puede eliminarlo con:

zip -d foo.zip __MACOSX .DS_Store

Finalmente, la respuesta aceptada es la mejor porque si por alguna razón __MACOSX realmente existe en su directorio (por ejemplo, porque usó anteriormente unzip para crearlo), la opción -x evitará que se empaqueten.

Edward Falk
fuente
3

Tratar Keka . Viene con una opción para excluir .DS_Store

enter image description here

ohho
fuente
1

Sólo una que realmente he usado es BetterZip [$ 20]

Es una aplicación GUI, pero tiene Applescript & amp; Soporte de servicios, con el que puede ejecutar ajustes preestablecidos con su configuración predeterminada, incluida la omisión de archivos específicos de Mac como .DS_Store & amp; __MAC OS X. Posiblemente vale la pena echarle un vistazo.

Desde la Ayuda de BetterZip ...

BetterZip admite dos servicios: uno para extracción y otro para   Creando archivos. Puede configurar lo que harán los servicios BetterZip   hacer con los ajustes preestablecidos.

Para usar un servicio, seleccione uno o más archivos o carpetas en el Finder   y elija Comprimir con BetterZip o Extraer con BetterZip de la   Buscador & gt; Menú de servicios o el submenú Servicios en el menú contextual.

Incluso puede configurar métodos abreviados de teclado para los servicios BetterZip, por ejemplo,   ^ ⌥⌘C para comprimir y ^ ⌥⌘E para extraer. Para configurar accesos directos para   servicios, vaya a Preferencias del sistema & gt; Teclado & gt; Atajos de teclado y   Elija Servicios en la tabla izquierda. En la tabla de la derecha, desplácese hasta Archivos   y Carpetas, elija Comprimir con BetterZip y presione. Un editable   Aparecerá el campo de texto. Presiona el atajo deseado.

Uno de mis presets de guardar ...

enter image description here

Tetsujin
fuente