Comando bunzip2 in Linux: decomprimere .bz2 e gestire i file esistenti
bunzip2 decomprime i file .bz2 e normalmente sostituisce il compresso con il file ripristinato. Per conservare anche l’input usa -k; con -c puoi invece inviare il contenuto allo standard output.
bunzip2 svolge la stessa funzione di bzip2 -d. Un normale sample.txt.bz2 diventa sample.txt; togliere lo strato di compressione da .tar.bz2 lascia un archivio tar. I membri interni vanno estratti con tar.
Sintassi e condizioni iniziali
bunzip2 [options] file.bz2 [file.bz2...]
Sostituisci i segnaposto con i file reali e controlla man bunzip2 e bunzip2 --version. Gli esempi si riferiscono a bzip2 1.0.8; verifica le opzioni disponibili nell’implementazione installata.
Prepara un data.csv.bz2 leggibile, spazio per il file ripristinato e permesso di scrittura nella directory. Assicurati che il nome data.csv sia libero o che un’eventuale copia esistente sia stata conservata altrove. Per creare un input di prova puoi seguire la guida alla compressione con bzip2.
Le modalità seguenti sono alternative: il comando normale elimina di solito il .bz2 dopo il successo, mentre -k lascia un file di uscita che può impedire una nuova prova con lo stesso nome. Per confrontarle riparti ogni volta da una copia di input e da una destinazione senza conflitti.
Ripristino normale e conservazione del compresso
Decomprimi normalmente. Questo comando ricrea data.csv e rimuove normalmente il compresso dopo il successo:
bunzip2 data.csv.bz2
Mantieni anche il .bz2. Con -k rimangono sia l’input compresso sia il risultato:
bunzip2 -k data.csv.bz2
Se il nome di uscita esiste già, bzip2 e bunzip2 normalmente rifiutano di sovrascriverlo. Leggi il messaggio, controlla quale copia contiene i dati da conservare e scegli una directory separata; non considerare -f un passaggio obbligatorio per proseguire.
Leggere un’anteprima tramite una pipe
Con -c i dati decompressi vanno allo standard output e il compresso rimane. Se sai che il contenuto è testo, puoi mostrarne l’inizio con head:
bunzip2 -c data.csv.bz2 | head
Head normalmente mostra le prime dieci righe e poi chiude la pipe. È un’anteprima, non un test completo: la decompressione può essere interrotta prima di leggere tutto il file e bunzip2 può segnalare un errore di scrittura perché il destinatario ha già chiuso il flusso. Non dedurre dalla riuscita di head che l’intero .bz2 sia integro.
Per un controllo completo usa bzip2 -t data.csv.bz2, quindi valuta subito il suo stato prima di eseguire altri comandi. Per conservare i dati con un nuovo nome puoi usare bunzip2 -c data.csv.bz2 > restored-data.csv, ma controlla prima che restored-data.csv sia disponibile: la redirezione può troncare un file esistente prima che bunzip2 termini. Non scrivere sopra l’input.
Non inviare dati binari o enormi quantità di testo direttamente al terminale. Scegli un file di uscita controllato o un programma adatto al tipo di contenuto e verifica comunque il risultato completo quando serve un ripristino.
Verificare file e contenuto dopo la decompressione
Per questo esercizio prepara note.txt.bz2 in una directory di prova dove note.txt non esiste. Puoi creare prima un piccolo note.txt con testo noto e comprimerlo con bzip2 note.txt su quella copia sacrificabile. Esegui poi:
bunzip2 note.txt.bz2
ls -l note.txt
Bunzip2 di solito non stampa testo quando riesce; ls mostra il file ripristinato, con colonne e valori che dipendono dall’ambiente. L’elenco non verifica i byte: apri il testo o confrontalo con la sorgente attesa. Un valore di controllo, o checksum, è utile soltanto se viene confrontato con quello della copia corretta usando lo stesso metodo.
Per conoscere lo stato di bunzip2 usa subito echo $? in una shell POSIX, prima di ls o di altro. Dopo ls, lo stato riguarda invece ls. In bzip2 0 indica uscita normale, 1 problemi di ambiente o uso, 2 dati compressi corrotti e 3 un errore di consistenza interno. Se compare un errore, non considerare completo un eventuale file di uscita parziale.
In una prova locale del 3 novembre 2026 con bunzip2 1.0.8 di Git for Windows, il ripristino normale ha ricreato i byte attesi rimuovendo il compresso; -k e -c lo hanno conservato. Sono stati confermati anche il rifiuto di un output esistente, il piccolo esempio note.txt, la decompressione con -s e la permanenza del solo tar dopo la rimozione dello strato bzip2. In una prova testuale più lunga, head ha mostrato dieci righe ma bunzip2 è terminato con stato 1 dopo la chiusura della pipe, mentre head aveva stato 0. Questi risultati su Windows non misurano prestazioni o memoria e non verificano metadati Linux né la sicurezza di contenuti non affidabili.
Opzioni principali
| Opzione | Funzione e limite |
|---|---|
-k |
Conserva il file compresso di input. |
-c |
Invia i dati decompressi allo standard output mantenendo l’input. |
-f |
Può forzare la sovrascrittura del file di destinazione esistente. |
-v |
Mostra informazioni sull’elaborazione. |
-s |
Usa una modalità di decompressione con minore richiesta di memoria, con un possibile costo in velocità. |
Formato corretto, spazio e recupero
Bunzip2 non è l’estrattore di archivi ZIP. Su backup.tar.bz2 rimuove la compressione e normalmente lascia backup.tar, senza creare le directory interne. Tar può elencare direttamente il compresso con tar -tjf backup.tar.bz2 ed estrarne i membri con l’operazione tar -xjf e una destinazione controllata.
Il file ripristinato può occupare molto più spazio del compresso. Conserva una copia valida dell’input e non eliminare copie utili finché non hai controllato il risultato. In caso di errore verifica spazio, permessi e messaggi, poi riprova in una directory separata. Il successo della decompressione non dimostra provenienza o affidabilità del contenuto: non eseguirlo automaticamente.
Domande frequenti
Che cosa rimane dopo bunzip2 su un tar.bz2?
Rimane normalmente un archivio .tar senza lo strato bzip2. Usa tar per estrarre i file che contiene, oppure leggi direttamente il tar.bz2 con tar.
Vedere le prime righe con head conferma il ripristino?
No. L’anteprima può fermarsi prima della fine. Verifica l’intero stream con bzip2 -t e confronta il risultato ripristinato con una fonte valida quando il contenuto è importante.
Documentazione ufficiale
Il manuale ufficiale di bzip2 e bunzip2 descrive opzioni e comportamento sui file. Consulta anche la pagina man del sistema in uso.




