Cómo evitar que la carpeta __MACOSX oculta se cree al comprimir archivos / carpetas en el Finder

3

Al comprimir archivos / carpetas en el Finder, a través del menú contextual, es decir, seleccione los archivos / carpetas, luego haga clic con el botón derecho y seleccione Comprimir ..., se crea una carpeta oculta llamada __MACOSX dentro del archivo zip.

¿Cómo no se puede crear la carpeta oculta llamada __MACOSX dentro del archivo zip?

    
pregunta Roei Hazout 02.07.2017 - 13:26

3 respuestas

5

Utilizando la información de la otra respuesta, aquí hay un Automator Service que está disponible en Finder para eliminar la carpeta "__MACOSX" metadatos desde un archivo comprimido zip.

Para crear el servicio:

  1. Abre Automator y selecciona: Archivo > Nuevo > Servicio

  2. Establezca El servicio recibe seleccionado en archivos o carpetas y en en Buscador .

  3. Agregue un Ejecución del script de shell Acción , configurando Shell: en / bin / bash y Pase la entrada: a como argumentos mientras reemplaza el código predeterminado con el siguiente código :

    for f in "$@"; do
        if [[ ${f##*.} =~ ^[zZ][iI][pP]$ ]]; then
            zip -d "$f" "__MACOSX*"
        fi
    done
    afplay /System/Library/Sounds/Purr.aiff
    
    • Lo que hace el código : comprueba que cada archivo pasado al servicio tenga una extensión zip, sin importar el caso, y si tiene una extensión zip, y si existe "__MACOSX" dentro del archivo zip, elimina el "__MACOSX" carpeta de metadatos del archivo zip.

    • ${f##*.} obtiene la extensión de archivo, =~ prueba el regex , y el ^[zZ][iI][pP]$ regex coincide con cualquier combinación de mayúsculas y minúsculas de cada letra dentro del corchetes mientras que ^ afirma la posición al comienzo de la cadena y $ afirma la posición al final de la cadena. Por lo tanto, solo coincide con zip en cualquier combinación de esas letras.

    • Nota: la última línea del código es opcional, solo para informarle que se completó el servicio, y puede cambiarse a un sonido diferente u omitirse si prefiere no ser notificado por sonido al finalizar.

  4. Guarde el Servicio como, por ejemplo,: Elimine '__MACOSX' del archivo Zip

Para usar el servicio:

En Finder , o en Desktop si el archivo zip está ubicado allí, seleccione el archivo zip zip, luego haga clic derecho y seleccione Eliminar '__MACOSX' del archivo comprimido Zip en el menú contextual o en Servicios en el menú contextual, o en Servicios en la Buscador menú según corresponda.

La imagen del servicio en Automator , a continuación, es de OS X 10.8.6, sin embargo, se probó bajo macOS 10.12.5 y también funciona allí .

    
respondido por el user3439894 02.07.2017 - 20:12
2

Como dijo el usuario 3439894, pruebe con una solución de terceros. Estoy usando la aplicación gratuita Keka con éxito, a largo plazo:

enlace

Configure en Keka las preferencias para no crear archivos específicos de mac en archivos. También se puede usar a través del menú contextual (después de agregar "Compress with Keka.workflow" a su carpeta "~ / Library / Services"), vea el enlace en la parte inferior izquierda de su sitio web.

    
respondido por el rudo.ba 02.07.2017 - 21:22
1

De WP Guru - Cómo eliminar __MACOSX de los archivos zip

  

Primero, crea tu ZIP a través del buscador, como siempre lo haces. A continuación, abrir   Terminal y cd en el directorio donde se encuentra su archivo ZIP. Si   es un camino largo, simplemente escriba "cd", luego arrastre la carpeta a la Terminal   (escribir menos siempre es bueno).

     

Ahora escribe lo siguiente:

     

zip -d your-archive.zip "__MACOSX*"

     

Y eso debería hacerlo. Esta   el comando (zip) eliminará todo (-d) a partir de __MACOSX de   su archivo ZIP (your-archive.zip).

     

Para verificar, escriba lo siguiente:

     

unzip -l your-archive.zip

     

Esto simplemente listará los contenidos de   your-archive.zip.

Si no te sientes cómodo con Terminal, BetterZip tiene una opción para hacer esto por ti, pero cuesta $ 25.

    
respondido por el Tetsujin 02.07.2017 - 13:38

Lea otras preguntas en las etiquetas