Come comprimere i file con ZSTD dalla riga di comando o bash

Come comprimere i file con ZSTD dalla riga di comando o bash
Nel mondo moderno, interagiamo e lavoriamo con i dati ovunque e ogni giorno. A seconda delle esigenze a portata di mano e dei dati che richiedono l'elaborazione, l'archiviazione e la potenza di calcolo possono diventare rapidamente risorse limitate.

Per risolvere questo problema, gli sviluppatori hanno sviluppato algoritmi e strumenti di compressione in grado di comprimere i dati in tempo reale, riducendo le dimensioni e la potenza di elaborazione richieste. Uno di questi strumenti è zstandard, comunemente noto come ZSTD.

ZSTD è un algoritmo di compressione in tempo reale, open source, sviluppato da Yann Collect, un dipendente su Facebook. ZSTD è molto veloce e offre rapporti di compressione eccezionali. È un algoritmo di compressione senza perdita di perdita di luce scritta in C ma ha implementazioni API in altri linguaggi di programmazione popolari come Python, Java, C#, JavaScript e molti altri. Fornisce anche funzioni di compressione e decompressione in memoria.

Per verificare se ZSTD supporta la lingua desiderata, controlla la risorsa fornita di seguito:

https: // Facebook.github.io/zstd/

Se desideri esaminare le informazioni di benchmarking su ZSTD, usa il link qui sotto:

https: // github.com/facebook/zstd

Questo tutorial ti mostrerà come compilare e installare lo strumento ZSTD in Linux, quindi utilizzarlo per eseguire la compressione e la decompressione dei dati.

Come installare ZSTD

Per utilizzare ZSTD, dobbiamo installarlo compilando dalle fonti. A seconda del sistema in esecuzione e della configurazione, potrebbe essere necessario installare dipendenze e strumenti per eseguire correttamente la compilation.

Inizia aggiornando il sistema e installando GNU Make utilizzando il comando:

Sudo Apt-get Aggiornamento
SUDO APT-OPGRADO
sudo apt-get -y installa build-essenziale wget tar

Una volta installati tutti gli strumenti, possiamo scaricare i file di origine e compilarli. Inizia navigando dove hai letto, scrivere ed eseguire le autorizzazioni. ~/Desktop

CD ~/desktop

Successivamente, usa Wget per scaricare i file nella directory.

wget https: // github.com/facebook/zstd/versioni/download/v1.4.9/ZSTD-1.4.9.catrame.Gz

Ora Unchive il file di download e navigare nella directory usando i comandi come:

TAR XVF ZSTD-1.4.9.catrame.Gz
CD ZSTD-1.4.9

I passaggi finali sono l'installazione di ZSTD utilizzando Make and Make Installa all'interno della directory ZSTD.

sudo make
sudo fare installazione

Una volta completate correttamente la compilazione e l'installazione, è possibile iniziare a utilizzare ZSTD sul sistema per comprimere e decomprimere i file.

Come usare ZSTD

ZSTD non differisce affatto dai metodi popolari di compressione e decompressione. Sebbene la tecnologia e l'implementazione sottostanti siano diverse dagli altri strumenti, comprimere un file con ZSTD è simile alla sintassi TAR e GZIP.

Come comprimere un file

Per comprimere un file, chiamare il comando ZSTD seguito dal flag -z, che dice a ZSTD di fare la compressione e, infine, il nome del file per comprimere.

Ad esempio, il comando di seguito comprime il file di system-backup in a .File ZST.

$ sudo zstd -z system -backup

L'output del comando come mostrato di seguito:

Backup di sistema: 100.00% (1821109 => 1821164 byte, backup del sistema.ZST)
$ LS System-Backup

Dovresti vedere un file con .ZST Extension come:

Backup di sistema.ZST

Una volta eseguito il comando, il file viene compresso e crea un nome file .FILE ZST che puoi decomprimere.

Comprimere e rimuovere il file di origine

Come puoi vedere dal comando sopra, il file di origine non viene rimosso per impostazione predefinita al momento della compressione. È possibile specificare per rimuovere i file di origine utilizzando il flag -rm:

$ sudo zstd -z - -rm di sistema -backup
Backup di sistema: 100.00% (1821109 => 1821164 byte, backup di sistema.ZST)
$ ls
Backup di sistema.ZST

Specificare il flag -rm rimuove automaticamente il file di origine.

Ottieni informazioni sul file

Per visualizzare informazioni correlate sul file compresso ZSTD, è possibile utilizzare il flag -l seguito dal nome del file. Le informazioni visualizzate includono la dimensione del file, il rapporto di compressione e il checksum del file

$ ZSTD -LV System -Backup.ZST
*** Interfaccia della riga di comando ZSTD 64-BITS V1.4.9, di Yann Collet ***
Backup di sistema.Frame ZST # Zstandard: 1
Dimensione della finestra: 1.74 MB (1821109 B)
Dimensione compressa: 1.74 MB (1821164 B)
Dimensione decompressa: 1.74 MB (1821109 B)
Rapporto: 1.0000
Controlla: xxh64

Specificare il livello di compressione

Per specificare esplicitamente il livello di compressione, utilizzare il - dove il livello è un valore che va da 1 a 19. Il livello di compressione predefinito è 3. Puoi anche sbloccare livelli di compressione più alti, io.e., Livello 20 - 22.

NOTA: Maggiore è il livello di compressione, maggiore è l'utilizzo della memoria.

Ad esempio, per comprimere un file con un livello di compressione di 10, utilizzare il comando:

ZSTD -Z -10 -RM System -Backup

Specificare la velocità di compressione.

ZSTD consente anche di impostare la velocità di compressione che va da 1 - a. La velocità di compressione è inversamente proporzionale al rapporto di compressione. La velocità di compressione predefinita è 1 e maggiore è il valore, maggiore è la velocità di compressione.

Ad esempio, per utilizzare la velocità massima di compressione, utilizzare il comando:

sudo zstd -z -fast = 10 system -backup

Specificare il formato di compressione

È inoltre possibile specificare il formato di compressione da utilizzare se non ti piace la compressione ZST predefinita. I formati includono ZSTD, GZIP, XZ, LZMA e LZ4.

Utilizzare il flag -format e specificare il formato come:

ZSTD -Z -FORMAT = GZIP SYSTEM -Backup

Elenco dei file di comprimere

Supponiamo di avere un elenco di file che desideri comprimere tutti in una volta. ZSTD consente di passare un file contenente un elenco di file e li comprime in modo ricorsivo.

Ad esempio, un elenco di file.txt contenente i file

/home/utente/mysql-backup
/backups/config
/Home/Desktop/Media
/sincronizzazione/2021/utenti

Una volta salvato il file, è possibile passare l'elenco a ZSTD con tutte le altre opzioni da eseguire sui file.

sudo zstd -z -v - -rm -elenco di filelist.TXT

Questo comando comprimerà tutti i file specificati nel file di testo e li rimuoverà al completamento.

Decomprimere un file

Per decomprimere un file, è possibile utilizzare il flag -d con il comando ZSTD o semplicemente utilizzare il comando UNZSTD per decomprimere.

Per esempio:

SUDO UNZSTD SISTEMA-Backup.ZST
sudo zstd -d system -backup.ZST

Verifica l'integrità del file

Per testare l'integrità di un file compresso ZST, utilizzare il flag -t come mostrato nel comando seguente:

SUDO ZSTD -T System -Backup.ZST

Conclusione

Come possiamo vedere dagli esempi, ZSTD è un potente algoritmo di compressione con numerosi casi d'uso. Per saperne di più su come funziona e sulla sua implementazione, controlla la pagina Man e Esperienza.

Grazie per aver letto.