Quiero comprimir varias carpetas al mismo tiempo, donde cada carpeta es su propio archivo zip. Me gustaría crear el zip sin _macosx ni ningún otro archivo oculto y, si es posible, cambiar la extensión del archivo zip a .cbz al mismo tiempo. De esa manera, puedo ejecutar un proceso en una carpeta completa y hacerlo todo rápidamente.
Estoy usando Ubooquity para alojar mis cómics y trata los archivos como corruptos si el archivo _macosx o cualquier otro archivo oculto está dentro del archivo zip.
Aquí hay un servicio de Automator que utiliza una sola acción Ejecutar script de Shell para manejar el proceso.
En Automator , seleccione: Archivo > Nuevo > Servicio
Conjunto: el servicio recibe carpetas seleccionadas en Finder
Agregar una acción Ejecutar secuencia de comandos de Shell
Guarde el Servicio de Automator dándole un nombre apropiado, por ejemplo: Create CBZ Zip Archive
Ahora, en Finder , seleccione las carpetas de destino en las que desea un archivo zip individual, con una extensión .cbz para cada carpeta seleccionada, luego haga clic con el botón derecho y seleccione Create CBZ Zip Archive , en la sección de servicios del menú contextual .
Código para ejecutar la acción de secuencia de comandos de Shell :
for d in "$@"; do
if ! cd "$(dirname "$d")"; then exit; fi
if ! d="$(basename "$d")"; then exit; fi
if [[ ! -e "${d}.cbz" ]]; then
if ! zip -r "${d}.cbz" "$d" -x \*.DS_Store \*.localized; then exit; fi
fi
done
Notas:
zip
no incluirá la __MACOSX
carpeta y, si encuentra que hay otros archivos ocultos además de .DS_Store
y .localized
, aunque no debería ejecutar este último en este caso de uso, puede agregar exclusiones adicionales al zip
comando .defaults write -g NSServicesMinimumItemCountForContextSubmenu -int 100001
Luego, killall Finder
para que el cambio surta efecto. Para agregar un atajo de teclado: Preferencias del Sistema > Teclado > Atajos > Servicios
usuario3439894
ryan boles
usuario3439894
ryan boles