Vuoi estrarre un singolo file o cartella da un archivio TAR o TAR.GZ? Ecco come puoi farlo su Linux, usando il comando tar.
Un tarball (TAR o TAR.GZ) è un insieme di file raggruppati insieme come un unico archivio che semplifica l'archiviazione e il trasferimento di un gran numero di file localmente o su Internet. Ogni volta che hai bisogno dei file, puoi semplicemente estrarre l'archivio.
Considera uno scenario in cui hai bisogno di un solo file da un archivio di grandi dimensioni. In tal caso, invece di estrarre l'intero archivio, è possibile estrarre solo il file necessario. Vediamo come.
Visualizza il contenuto di un tarball
Se vuoi solo visualizzare il contenuto di un file TAR o TAR.GZ, non è necessario estrarlo. Invece, usa il seguente comando per vedere cosa c'è dentro:
tar -tvf [archivio.tar]
tar -ztvf [archivio.tar.gz]
Questo stamperà l'elenco di tutti i file e le directory all'interno dell'archivio.
Estrai un singolo file dal tarball
Per estrarre un singolo file da TAR o TAR.GZ, utilizzare il seguente formato di comando:
tar -xvf [archivio.tar] [percorso-file]
tar -zxvf [archivio.tar.gz] [percorso-file]
Ricorda, dovrai fornire il percorso completo del file che desideri estrarre. È possibile trovare il percorso completo del file o della directory utilizzando l'estensione tar -tvf [archivio.tar] comando.
Per estrarre un file prova1.txt dal prova.tar E prova.tar.gz file, i comandi sarebbero:
tar -xvf test.tar test1.txt
tar -zxvf test.tar.gz test1.txt
...Dove:
- -X viene utilizzato per estrarre i file dall'archivio
- - v è usato per vedere i progressi mentre vengono estratti
- -F è usato per specificare il nome del tarball
- -z viene utilizzato per decomprimere i file TAR.GZ
Questi comandi estrarranno il file specificato nella directory del terminale corrente.
Estrai una singola directory da Tarball
Allo stesso modo, puoi anche estrarre una singola directory da un tarball usando la seguente sintassi:
tar xvf [archivio.tar] [percorso-directory]
tar -zxvf [archivio.tar.gz] [percorso-directory]
Ad esempio, per estrarre un file intero prova1 sottodirectory da prova.tar archive, dovresti fornire il percorso completo della directory, ad es. prova/prova1:
tar -xvf test.tar test/test1
Questo estrarrà l'intera sottodirectory prova/prova1 nella directory del terminale corrente.
Estrai un singolo file o cartella in una directory diversa
Puoi anche estrarre un file o una directory da un tarball in una directory diversa. Per questo, usa la stessa sintassi di cui sopra ma aggiungi il -C opzione seguita dalla directory di destinazione:
tar -xvf [archivio.tar] -C [directory_di_destinazione] [file-o-directory]
tar -zxvf [archivio.tar.gz] -C [directory_destinazione] [file o directory]
Diciamo che vogliamo estrarre una directory prova2 dal prova.tar archivio al Download directory invece della directory di lavoro attuale. Il comando, in questo caso, sarebbe:
tar -xvf test.tar -C ~/Download/test/test2
Elimina un singolo file o directory da un tarball
Se è necessario eliminare un singolo file o directory da un file TAR o TAR.GZ, utilizzare l'estensione --eliminare opzione con il comando tar:
tar -vf [archivio.tar] --delete [file o directory]
Tuttavia, non è possibile eliminare un file o una directory direttamente da un tarball compresso (TAR.GZ). Quello che devi fare è prima decomprimere il file TAR.GZ, eliminare il file o la directory e quindi ricomprimerlo.
Per decomprimere il file TAR.GZ, utilizzare il seguente comando:
gzip -d [archivio.tar.gz]
La decompressione convertirà il file in un TAR. Ora puoi eliminare il file dall'archivio TAR utilizzando:
tar -vf [archivio.tar] --delete [file o directory]
Successivamente, ricomprimi il file TAR usando gzip:
gzip -f [archivio.tar]
Risparmia tempo mentre lavori con gli archivi su Linux
L'estrazione dei soli file richiesti da un archivio non solo previene il disordine, ma consente anche di risparmiare tempo che altrimenti verrebbe impiegato per la ricerca in un gran numero di file.
A volte, la creazione e l'estrazione di file TAR si traduce in file duplicati nel sistema. Pertanto, è una buona pratica identificare e rimuovere periodicamente quei duplicati per riordinare il tuo spazio.