
- Come preparare l’ambiente di lavoro
- Sintassi generale dei comandi
- Il comando “a” per creare archivi
- Il comando “e” per estrarre archivi
- Il comando “x” per estrarre con struttura completa
- Il comando “l” per elencare il contenuto di un archivio
- Il comando “t” per testare l’integrità di un archivio
- Il comando “u” per aggiornare archivi esistenti
- Il comando “d” per eliminare file da un archivio
- Il comando “v” per visualizzare e creare archivi segmentati
- Opzioni avanzate utili
- Esempi pratici di utilizzo quotidiano
- Soluzione problemi comuni
- Integrazione con script e automazione
- Conclusioni
La riga di comando è uno degli strumenti più potenti a disposizione di qualsiasi utente Windows, e quando si combina con un archiver affidabile come 7-Zip, le possibilità di automazione e gestione dei file diventano enormi. 7-Zip è un archivio open source che supporta numerosi formati, tra cui il proprio formato proprietario .7z, ZIP, RAR, TAR, GZIP e molti altri. Utilizzarlo da riga di comando offre vantaggi significativi rispetto all’interfaccia grafica: maggiore velocità, possibilità di scripting, integrazione con batch file e automazione di processi ricorrenti. In questa guida esploreremo tutti i comandi principali di 7-Zip da CMD, fornendo esempi pratici per ogni operazione.
Come preparare l’ambiente di lavoro
Prima di utilizzare i comandi 7-Zip da riga di comando, è fondamentale assicurarsi che il software sia correttamente installato sul sistema e che la sua cartella di installazione sia accessibile dal prompt dei comandi. Durante l’installazione di 7-Zip, viene data la possibilità di aggiungere il percorso dell’eseguibile al PATH di Windows. Se questa opzione è stata selezionata, potrete digitare semplicemente “7z” da qualsiasi directory. In caso contrario, dovrete indicare il percorso completo del file eseguibile ogni volta.
Per verificare che 7-Zip sia installato correttamente, aprite il prompt dei comandi e digitate il comando seguente per visualizzare la versione installata:
- Digitate “7z -v” e premete Invio. Il sistema restituirà il numero di versione corrente del software.
Se il comando non viene riconosciuto, significa che il percorso di 7-Zip non è nel PATH di sistema. In questo caso, potete aggiungere manualmente la cartella di installazione al PATH oppure utilizzare il percorso assoluto ogni volta che invocate il programma. Il percorso predefinito su sistemi a 64 bit è tipicamente “C:\Program Files\7-Zip\7z.exe”, mentre su sistemi a 32 bit si trova in “C:\Program Files (x86)\7-Zip\7z.exe”.
Sintassi generale dei comandi
Tutti i comandi di 7-Zip da CMD seguono una struttura sintattica comune. La forma base è la seguente: “7z [comando] [opzioni] [archivio] [file]”. Il comando indica l’operazione da eseguire, le opzioni modificano il comportamento del comando, l’archivio è il file .7z o .zip su cui si lavora e i file sono gli elementi coinvolti nell’operazione. È importante notare che 7-Zip distingue tra maiuscole e minuscole solo nei percorsi dei file, non nei comandi stessi.
Il comando “a” per creare archivi
Il comando “a” (add) è uno dei più utilizzati e serve a creare un nuovo archivio o ad aggiungere file a un archivio esistente. È la funzione principale di compressione di 7-Zip e offre numerose opzioni per personalizzare il processo.
Creare un archivio .7z con compressione massima
Per creare un archivio .7z con la massima compressione disponibile, utilizzate il comando seguente:
- “7z a -t7z nome_archivo.7z percorso_file_da_comprimere” dove “a” indica l’aggiunta, “-t7z” specifica il formato dell’archivio come .7z, “nome_archivo.7z” è il nome del file risultante e “percorso_file_da_comprimere” può essere un singolo file o una directory con wildcards.
Ad esempio, per comprimere tutti i file di testo presenti nella cartella Documenti in un archivio chiamato backup_testi.7z, il comando sarà: “7z a -t7z backup_testi.7z C:\Utenti\NomeUtente\Documenti\*.txt”. 7-Zip comprimerà tutti i file .txt trovati nella directory specificata e nelle sue sottodirectory.
Ottimizzare la compressione per velocità o dimensione
7-Zip offre diversi livelli di compressione controllabili tramite l’opzione “-mx”. Il valore “m0” corrisponde alla compressione più rapida ma con un rapporto inferiore, mentre “m9” offre il massimo rapporto di compressione a scapito della velocità. Per comprimere rapidamente grandi quantità di dati, utilizzate: “7z a -t7z -mx1 nome_archivo.7z percorso_file”. Per la massima compressione, invece: “7z a -t7z -mx9 nome_archivo.7z percorso_file”.
È possibile anche specificare il metodo di compressione con “-m0=deflate” per formati compatibili come ZIP, oppure utilizzare l’algoritmo LZMA2 che è il metodo predefinito e più efficiente di 7-Zip. Per impostare un livello di memoria per la compressione, si usa l’opzione “-ms”, utile quando si lavorano file molto grandi.
Aggiungere file a un archivio esistente
Il comando “a” non crea solo nuovi archivi ma può anche aggiungere contenuti a un archivio già esistente. Se l’archivio non esiste, verrà creato. Se esiste, i nuovi file verranno aggiunti senza eliminare il contenuto precedente. Questo comportamento lo rende ideale per backup incrementali e gestione di collezioni di dati in continua evoluzione.
Il comando “e” per estrarre archivi
Il comando “e” (extract) estrae i file da un archivio nella directory corrente, senza preservare la struttura delle cartelle originali. È il metodo più semplice per estrarre rapidamente il contenuto di un archivio.
Estrazione base dei file
Per estrarre tutti i file di un archivio nella directory corrente, digitate: “7z e nome_archivo.7z”. Questo comando estrarrà ogni file direttamente nella cartella in cui vi trovate, ignorando eventuali sottodirectory presenti nell’archivio originale. Tutti i file verranno depositati nello stesso livello.
Estrarre con specifica directory di destinazione
Se desiderate estrarre i file in una cartella diversa da quella corrente, aggiungete il percorso di destinazione al comando: “7z e nome_archivo.7z -oC:\Percorso\Destinazione”. L’opzione “-o” (lettera o minuscola) specifica la directory di output. Se la directory non esiste, 7-Zip la creerà automaticamente.
Il comando “x” per estrarre con struttura completa
A differenza del comando “e”, il comando “x” (extract with eXtract) preserva la struttura completa delle directory all’interno dell’archivio. Questo è fondamentale quando si lavora con archivi che contengono cartelle annidate e l’organizzazione dei file è importante.
Estrarre mantenendo la gerarchia delle cartelle
Per estrarre un archivio mantenendo intatta la struttura originale, utilizzate: “7z x nome_archivo.7z -oC:\Percorso\Destinazione”. Il comando ricreerà tutte le sottodirectory come erano state archiviate. Questo è il metodo consigliato per l’estrazione di pacchetti software, backup completi e qualsiasi operazione che richieda la preservazione della struttura dei file.
Estrarre solo determinati file
7-Zip permette di filtrare i file estratti tramite wildcards. Per estrarre solo i file con estensione .pdf da un archivio, il comando sarà: “7z x nome_archivo.7z *.pdf -oC:\Percorso\Destinazione”. Potete combinare più filtri separandoli con virgole, ad esempio “*.docx,*.xlsx” per estrarre solo documenti Word ed Excel.
Il comando “l” per elencare il contenuto di un archivio
Il comando “l” (list) visualizza il contenuto di un archivio senza estrazione. È utile per verificare quali file sono presenti, controllare le dimensioni e la data di modifica dei contenuti prima di procedere con l’estrazione.
Listare i file con informazioni dettagliate
Per elencare il contenuto di un archivio con informazioni dettagliate come nome file, dimensione compressa, dimensione decompressa e data, utilizzate: “7z l nome_archivo.7z”. L’output mostrerà una tabella ordinata con tutte le voci presenti nell’archivio, inclusa la struttura delle directory.
Listare con formato personalizzato
È possibile personalizzare l’output del comando “l” utilizzando l’opzione “-t”. Ad esempio, “7z l -tl nome_archivo.7z” mostrerà anche il percorso completo dei file all’interno dell’archivio. L’opzione “-sdel” permette di separare i campi con un delimitatore specifico, utile per l’elaborazione successiva in script.
Il comando “t” per testare l’integrità di un archivio
Il comando “t” (test) verifica l’integrità dei file all’interno di un archivio senza estrarli. Questa funzione è particolarmente utile per controllare se un download è andato a buon fine o se un backup è stato creato correttamente.
Verificare l’integrità di un archivio
Per testare la validità di un archivio, digitate: “7z t nome_archivo.7z”. 7-Zip leggerà ogni file all’interno dell’archivio e segnalerà eventuali errori o corruzioni rilevati. Se l’archivio è integro, il comando restituirà un messaggio di successo. In caso contrario, verranno elencati i file danneggiati.
Questo comando è essenziale prima di procedere con operazioni critiche su dati importanti, poiché permette di individuare problemi prima che diventino irreversibili durante l’estrazione o la manipolazione dei file.
Il comando “u” per aggiornare archivi esistenti
Il comando “u” (update) aggiorna un archivio esistente aggiungendo nuovi file, modificando quelli esistenti o rimuovendo file obsoleti. È ideale per mantenere backup aggiornati senza dover ricreare l’intero archivio da zero.
Aggiornare un archivio con file modificati
Per aggiornare un archivio solo con i file che sono stati modificati rispetto all’ultima versione, utilizzate: “7z u nome_archivo.7z percorso_file -ssw”. L’opzione “-ssw” forza l’aggiornamento anche dei file non modificati, garantendo che l’archivio rifletta lo stato attuale dei dati. Senza questa opzione, 7-Zip aggiungerà solo i file nuovi o modificati.
Aggiornare con compressione personalizzata
L’aggiornamento può sfruttare le stesse opzioni di compressione del comando “a”. Ad esempio: “7z u nome_archivo.7z -mx5 -m0=lzma2 percorso_file” aggiornerà l’archivio utilizzando il metodo LZMA2 con un livello di compressione medio, bilanciando velocità e dimensione finale.
Il comando “d” per eliminare file da un archivio
Il comando “d” (delete) permette di rimuovere file specifici da un archivio esistente senza dover decomprimere e ricreare l’intero contenuto. Questo è particolarmente utile quando si desidera liberare spazio o rimuovere dati obsoleti.
Rimuovere file da un archivio
Per eliminare file da un archivio, digitate: “7z d nome_archivo.7z percorso_file_da_rimuovere”. Potete specificare più file separandoli con virgole oppure utilizzare wildcards per rimuovere gruppi di file. Ad esempio, “7z d backup.7z *.tmp” eliminerà tutti i file temporanei dall’archivio.
È importante notare che l’eliminazione di file da un archivio 7-Zip non riduce immediatamente la dimensione del file su disco. Lo spazio viene liberato solo quando si crea una nuova versione dell’archivio con il comando “u” o ricreandolo ex novo.
Il comando “v” per visualizzare e creare archivi segmentati
Il comando “v” (view) ha due funzioni distinte: visualizza il contenuto di un archivio in formato leggibile e, quando utilizzato con parametri specifici, crea archivi segmentati.
Creare archivi segmentati
Quando si lavora con file molto grandi, è possibile dividere l’archivio in parti più piccole utilizzando: “7z a -v500m nome_archivo.7z percorso_file”. Questo creerà un archivio .7z diviso in segmenti da 500 megabyte ciascuno. I segmenti verranno denominati con suffissi sequenziali come “.7z.001”, “.7z.002” e così via.
Le dimensioni dei segmenti possono essere specificate in vari formati: “k” per kilobyte, “m” per megabyte, “g” per gigabyte e “t” per terabyte. Ad esempio, “-v1g” creerà archivi da 1 gigabyte ciascuno. Questa funzionalità è essenziale per trasferire file di grandi dimensioni su supporti con limiti di dimensione o per l’upload su servizi cloud.
Opzioni avanzate utili
Oltre ai comandi principali, 7-Zip offre numerose opzioni che migliorano notevolmente la flessibilità dell’utilizzo da riga di comando. Ecco le più importanti:
- “-y” accetta automaticamente tutte le conferme senza richiedere interazione utente. Essenziale per scripting e automazione.
- “-p[password]” imposta una password per crittografare l’archivio. Ad esempio, “-pMiaPassword123” proteggerà il contenuto con la password specificata.
- “-scsUTF-8” specifica la codifica dei nomi dei file come UTF-8, fondamentale per gestire caratteri speciali e nomi in lingue diverse dall’inglese.
- “-ao[a|s|u|t]” controlla il comportamento di sovrascrittura: “a” aggiunge, “s” salta, “u” aggiorna, “t” rinomina con timestamp. La scelta dipende dal contesto d’uso.
- “-mmt” abilita o disabilita l’uso di più thread del processore per accelerare le operazioni di compressione e decompressione.
- “-si” legge i dati da stdin (input standard), permettendo il piping di dati direttamente da altri programmi. Ad esempio, “dir | 7z a -si archivio.7z” comprime l’output del comando dir.
Esempi pratici di utilizzo quotidiano
Di seguito sono riportati alcuni scenari comuni che dimostrano la potenza dell’utilizzo di 7-Zip da riga di comando in contesti reali.
Backup automatico giornaliero
Per creare un backup compresso delle cartelle di lavoro ogni giorno, potete utilizzare un batch file con il comando: “7z a -t7z -mx6 -ssw -y C:\Backup\backup_%date%.7z C:\Documenti\Lavoro\*.*”. Questo comando comprime tutto il contenuto della cartella di lavoro in un archivio .7z con nome contenente la data corrente, salvandolo nella directory Backup.
Estrazione rapida di file da un archivio ZIP
Per estrarre rapidamente solo i file Excel da un archivio ZIP senza aprire l’interfaccia grafica: “7z e archivio.zip *.xlsx -oC:\Estratti\Excel -y”. Il comando estrarrà tutti i file .xlsx nella cartella di destinazione accettando automaticamente le sovrascritture.
Controllo integrità di un backup
Per verificare che un backup creato mesi fa sia ancora valido: “7z t C:\Backup\backup_2024.7z”. Se il test supera tutte le verifiche, i dati sono integri e possono essere ripristinati con fiducia.
Compressione di grandi directory con progressione
Per comprimere una directory intera mostrando l’avanzamento in tempo reale: “7z a -t7z -mx5 -mmt=on -spf grande_archivo.7z C:\CartellaGrande\*”. L’opzione “-spf” memorizza i percorsi completi dei file e “-mmt=on” attiva la compressione multithread per velocizzare il processo.
Soluzione problemi comuni
Anche se 7-Zip è un software robusto, possono verificarsi errori durante l’utilizzo da riga di comando. Ecco le cause più frequenti e le relative soluzioni.
- “Comando non riconosciuto”: significa che il percorso di 7-Zip non è nel PATH di Windows. Aggiungetelo manualmente nelle variabili d’ambiente del sistema o utilizzate il percorso completo dell’eseguibile.
- “Errore di permission denied”: il prompt dei comandi potrebbe non avere i privilegi necessari per accedere a determinate directory. Avviate CMD come amministratore con il tasto destro sul menu Start e selezionando “Esegui come amministratore”.
- “Archivio danneggiato”: se un archivio risulta corrotto, provate a ricrearlo o utilizzate l’opzione di riparazione integrata di 7-Zip. Per i formati ZIP, il comando “7z u nome_archivo.zip -sdel” può talvolta risolvere problemi minori.
- “Errore di codifica dei nomi file”: se i nomi dei file contengono caratteri speciali e vengono visualizzati in modo errato, aggiungete l’opzione “-scsUTF-8” a tutti i comandi.
Integrazione con script e automazione
Uno dei principali vantaggi dell’utilizzo di 7-Zip da CMD è la possibilità di integrarlo in script batch (.bat) e PowerShell per automatizzare processi ricorrenti. Potete creare un file .bat contenente una sequenza di comandi 7-Zip che viene eseguito automaticamente tramite l’Agenda di Windows o un cron job su sistemi Linux con WSL.
Ad esempio, uno script di backup potrebbe comprimere le cartelle importanti, verificare l’integrità dell’archivio appena creato, eliminare i backup più vecchi di 30 giorni e inviare una notifica via email al termine del processo. Tutto questo in pochi minuti di esecuzione automatica senza alcun intervento manuale.
7-Zip supporta anche il piping con altri strumenti della riga di comando Windows, permettendo di combinare la sua potenza con utility come findstr per filtrare output, xcopy per spostare file e net send per inviare notifiche. Questa flessibilità lo rende uno strumento indispensabile per amministratori di sistema, sviluppatori e utenti avanzati che desiderano un controllo totale sulla gestione dei propri archivi.
Conclusioni
I comandi 7-Zip da CMD rappresentano una risorsa potente per chiunque debba gestire file compressi in modo efficiente e automatizzato. La gamma di operazioni disponibili, dalla creazione alla verifica dell’integrità, dall’estrazione selettiva all’aggiornamento incrementale, copre tutte le esigenze quotidiane di compressione e decompressione. Combinati con le numerose opzioni disponibili, questi comandi offrono un livello di controllo e personalizzazione che l’interfaccia grafica non può eguagliare. Conoscere e padroneggiare questi strumenti vi permetterà di risparmiare tempo, ridurre gli errori manuali e integrare la gestione degli archivi in flussi di lavoro automatizzati, rendendo il vostro sistema più produttivo e professionale.














