Esclusione di file da un archivio zip
Le basi dell’esclusione dei file durante la creazione di un archivio zip ruotano attorno al flag -x, utilizzato per escludere i file dall’archivio che corrispondono a un nome o modello specifico. Al suo livello più semplice, il comando assomiglia a questo:
zip archive.zip files -x «ExcludeMe»
Con questo comando, puoi escludere un singolo file, per esempio, «Nothanks.jpg»:
zip archive.zip images/ -x «Nothanks.jpg»
Esploriamo alcuni esempi pratici in cui questa funzionalità risulta utile.
Escludere i file .DS_Store dagli archivi Zip
Utilizzando il seguente comando, puoi impedire che i file .DS_Store, i metadati invisibili di macOS, vengano inclusi nell’archivio zip:
zip -r archivename.zip archivedirectory -x «* .DS_Store»
Se la directory contiene sottodirectory, ti consiglio di usare questa variante per escludere anche i file .DS_Store all’interno delle sottodirectory:
zip -r archivio.zip directory -x «* /.DS_Store»
Nota: non tutte le shell richiedono le virgolette affinché questo comando funzioni correttamente, ma nella shell bash (l’impostazione predefinita per macOS) è necessario usarle per escludere con caratteri jolly e pattern.
Escludere tipi di file specifici da un archivio zip
Grazie ai caratteri jolly, puoi escludere tutti i file di un certo tipo in base all’estensione. Ad esempio, il comando seguente comprimerà un’intera directory, escludendo i file .jpg:
zip -r archivio.zip directory -x «* .jpg»
Puoi modificare il comando per escludere qualsiasi estensione di file o pattern specifico.
Escludere la directory .git o .svn da un archivio zip
Per zippar una directory escludendo .git e il suo contenuto, usa:
zip -r zipdir.zip directorytozip -x «* .git *»
Per escludere la directory .svn, il comando è:
zip -r zipped.zip directory -x «* .svn *»
Escludere tutti i file nascosti da un archivio zip
Puoi escludere file e cartelle invisibili, che iniziano con un punto, usando modelli e caratteri jolly. Ecco come escludere tutti i file invisibili:
zip -r archivename.zip directorytozip -x «*.*»
Oppure, per escludere tutti i file invisibili in tutte le sottodirectory:
zip -r archivio.zip directory -x «* /.*»
In definitiva, questo è solo un altro motivo per cui gli utenti esperti preferiscono usare il Terminal per creare archivi. Con potenti funzionalità come il supporto di caratteri jolly, l’esclusione e l’opzione di protezione con password, il Terminal offre molto più rispetto alle app di terze parti.
E sì, se insisti a rimanere nell’interfaccia utente, puoi usare le funzioni di ricerca di Finder e Spotlight per filtrare il contenuto di una cartella in macOS prima di creare un archivio. Oppure, puoi selezionare manualmente i file non da includere usando Comando + clic, ma questo metodo diventa rapidamente inefficiente per archiviazioni di grandi dimensioni. Quindi, il terminale è decisamente più pratico, e nonostante si basi sulla linea di comando, diventa intuitivo una volta che si afferrano le basi.
Nuovi aggiornamenti per il 2024
Con l’avvento di macOS 14, ci sono stati miglioramenti significativi nella gestione degli archivi zip. La nuova interfaccia utente nella finestra del Terminale rende più facile l’applicazione di comandi complessi, ed è stata introdotta una funzione di suggerimento che aiuta a completare automaticamente i comandi più usati. Inoltre, i comandi ora supportano anche l’esclusione di file basata su metadati, permettendo agli utenti di escludere file non solo per nome, ma anche per dimensioni o data di modifica.
Inoltre, la compatibilità con i formati di archiviazione di terze parti è migliorata, rendendo possibile l’integrazione con app come Keka e The Unarchiver senza problemi, permettendoti di gestire i tuoi file con maggiore flessibilità. Infine, Apple ha introdotto opzioni avanzate di crittografia per una sicurezza aggiuntiva, fondamentale per chi lavora con dati sensibili.