Ecco un servizio di automazione che utilizza come singolo Esegui script di shell azione per gestire il processo.
-
In Automator , seleziona: File > Nuovo > servizio
-
Set: Il servizio riceve le cartelle selezionate in Finder
-
Aggiungi un Esegui script di shell azione
- Impostazioni: Shell: / bin / bash e Passa l'input: come argomenti
- Sostituisci tutto il codice predefinito con il codice mostra più sotto.
-
Salva il servizio Automator assegnandogli un nome appropriato, ad es. Crea archivio zip CBZ
Ora in Finder , seleziona le cartelle di destinazione che desideri un singolo archivio zip, con un'estensione .cbz per ogni cartella selezionata, quindi fai clic con il pulsante destro del mouse e seleziona Crea archivio zip CBZ , dalla sezione servizi del menu di scelta rapida .
Codice per Esegui script di shell Azione :
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
Note:
- Come codificato, crea il file zip file filename.cbz solo se il file non esiste già.
- Crea il file zip zip filename.cbz nella stessa cartella contenente le cartelle selezionate.
- È scritto in modo che se si verifica un errore con uno dei passi compiuti, esce dallo script senza notifica. La gestione degli errori può essere modificata in base alle esigenze / richieste.
- Per impostazione predefinita,
zip
non includerà la cartella __MACOSX
e se trovi ci sono altri file nascosti oltre a .DS_Store
e .localized
, anche se in questo caso d'uso non devi eseguire l'accesso a quest'ultimo; puoi aggiungere ulteriori esclusioni al comando zip
.
- Così com'è, l'unica indicazione che lo script è terminato è quando l'icona dell'ingranaggio del servizio di Automator sulla barra dei menu è scomparsa. Alcune altre forme di notifica di completamento possono essere aggiunte allo script e o il flusso di lavoro del servizio Automator esteso con azioni aggiuntive appropriate, necessarie / richieste.
- Così com'è, è senza fronzoli, tuttavia fa ciò che è programmato da fare.