Cómo comprimir archivos con ZSTD desde la línea de comandos o script bash

Cómo comprimir archivos con ZSTD desde la línea de comandos o script bash
En el mundo moderno, interactuamos y trabajamos con datos en todas partes y todos los días. Dependiendo de las necesidades en cuestión y los datos que requieren procesamiento, almacenamiento y energía informática pueden convertirse rápidamente en recursos limitados.

Para resolver este problema, los desarrolladores desarrollaron algoritmos de compresión y herramientas capaces de comprimir datos en tiempo real, reduciendo el tamaño y la potencia de procesamiento requeridas. Una de estas herramientas es ZSTANDARD, comúnmente conocido como ZSTD.

ZSTD es un algoritmo de compresión gratuito, de código abierto y en tiempo real desarrollado por Yann Collect, un empleado de Facebook. ZSTD es muy rápido y ofrece excelentes relaciones de compresión. Es un algoritmo de compresión sin pérdidas escrito en C, pero tiene implementaciones de API en otros lenguajes de programación populares como Python, Java, C#, JavaScript y muchos más. También proporciona funciones de compresión y descompresión en memoria.

Para verificar si ZSTD admite su idioma deseado, verifique el recurso proporcionado a continuación:

https: // facebook.github.IO/ZSTD/

Si desea observar información sobre Benchmarking sobre ZSTD, use el enlace a continuación:

https: // github.com/Facebook/ZSTD

Este tutorial le mostrará cómo compilar e instalar la herramienta ZSTD en Linux, luego usarla para realizar la compresión de datos y la descompresión.

Cómo instalar ZSTD

Para usar ZSTD, necesitamos instalarlo compilando las fuentes. Dependiendo del sistema que esté ejecutando y la configuración, es posible que deba instalar dependencias y herramientas para realizar la compilación con éxito.

Comience por actualizar su sistema e instalar GNU Make Usando el comando:

actualización de sudo apt-get
actualización de sudo apt-get
sudo apt-get -y instalar alquitrán de wget esencial

Una vez que tengamos todas las herramientas instaladas, podemos descargar los archivos de origen y compilarlos. Comience por navegar dónde ha leído, escribe y ejecuta permisos. ~/Escritorio

CD ~/Desktop

A continuación, use WGet para descargar los archivos en el directorio.

wget https: // github.com/facebook/zstd/comunes/descargar/v1.4.9/ZSTD-1.4.9.alquitrán.GZ

Ahora desarchive el archivo de descarga y navegue al directorio utilizando los comandos como:

Tar XVF ZSTD-1.4.9.alquitrán.GZ
CD ZSTD-1.4.9

Los pasos finales son instalar ZSTD utilizando la instalación de Make and Make dentro del directorio ZSTD.

sudo haz
sudo haz instalar

Una vez que la compilación y la instalación se completen correctamente, puede comenzar a usar ZSTD en su sistema para comprimir y descomprimir archivos.

Cómo usar ZSTD

ZSTD no difiere de los métodos populares de compresión y descompresión. Aunque la tecnología y la implementación subyacentes son diferentes de otras herramientas, la comprimir un archivo con ZSTD es similar a la sintaxis de TAR y GZIP.

Cómo comprimir un archivo

Para comprimir un archivo, llame al comando ZSTD seguido del indicador -z, que le dice a ZSTD que haga la compresión y, finalmente, el nombre del archivo para comprimir.

Por ejemplo, el siguiente comando comprime el archivo de system-backup en un .archivo ZST.

$ sudo ZSTD -Z System -Backup

La salida del comando como se muestra a continuación:

System-Backup: 100.00% (1821109 => 1821164 bytes, copia de seguridad del sistema.ZST)
$ LS System-Backup

Debería ver un archivo con .Extensión ZST como:

system-backup.zest

Una vez que se ejecuta el comando, el archivo se comprime y crea un nombre de archivo .archivo ZST que puede descomprimir.

Comprimir y eliminar el archivo fuente

Como puede ver en el comando anterior, el archivo fuente no se elimina de forma predeterminada tras la compresión. Puede especificar para eliminar los archivos de origen utilizando el indicador -rm:

$ sudo ZSTD -Z - -RM System -Backup
System-Backup: 100.00% (1821109 => 1821164 bytes, system-backup.ZST)
$ LS
system-backup.zest

Especificar el indicador -RM elimina automáticamente el archivo de origen.

Obtener información sobre el archivo

Para mostrar información relacionada sobre el archivo comprimido ZSTD, puede usar el indicador -l seguido del nombre del archivo. La información que se muestra incluye el tamaño del archivo, la relación de compresión y la suma de verificación del archivo

$ ZSTD -LV System -Backup.zest
*** Interfaz de línea de comandos ZSTD 64 bits V1.4.9, por Yann Collet ***
system-backup.ZST # Frames Zstandard: 1
Tamaño de la ventana: 1.74 MB (1821109 b)
Tamaño comprimido: 1.74 MB (1821164 b)
Tamaño descomprimido: 1.74 MB (1821109 b)
Relación: 1.0000
Verifique: xxh64

Especificar el nivel de compresión

Para especificar explícitamente el nivel de compresión, use el - donde el nivel es un valor que varía de 1 a 19. El nivel de compresión predeterminado es 3. También puedes desbloquear niveles más altos de compresión, yo.mi., Nivel 20 - 22.

NOTA: Cuanto mayor sea el nivel de compresión, mayor uso de la memoria.

Por ejemplo, para comprimir un archivo con un nivel de compresión de 10, use el comando:

ZSTD -Z -10 - -RM System -Backup

Especificar la velocidad de compresión.

ZSTD también le permite establecer la velocidad de compresión que varía de 1 a. La velocidad de compresión es inversamente proporcional a la relación de compresión. La velocidad de compresión predeterminada es 1, y cuanto mayor sea el valor, más rápida es la velocidad de compresión.

Por ejemplo, para usar la velocidad de compresión máxima, use el comando:

sudo ZSTD -Z -FAST = 10 Sistema -Backup

Especificar formato de compresión

También puede especificar el formato de compresión para usar si no le gusta la compresión de ZST predeterminada. Los formatos incluyen ZSTD, GZIP, XZ, LZMA y LZ4.

Use el indicador -format y especifique el formato como:

ZSTD -Z --Format = GZIP System -Backup

Lista de archivos de comprimir

Supongamos que tiene una lista de archivos que le gustaría comprimir todo a la vez. ZSTD le permite pasar un archivo que contiene una lista de archivos y los comprime de manera recursiva.

Por ejemplo, una lista de archivos.txt que contiene los archivos

/home/user/mysql-backup
/copias de seguridad/config
/Home/Desktop/Media
/Sync/2021/usuarios

Una vez que guarde el archivo, puede pasar la lista a ZSTD con todas las demás opciones para realizar en los archivos.

sudo ZSTD -Z -V - -RM -Lista de filelería.TXT

Este comando comprimirá todos los archivos especificados en el archivo de texto y los eliminará al finalizar.

Descomprimir un archivo

Para descomprimir un archivo, puede usar el indicador -d con el comando ZSTD o simplemente usar el comando unzstd para descomprimir.

Por ejemplo:

SUDO UNZSTD SYSTEMA-Backup.zest
sudo ZSTD -D System -Backup.zest

Verificar la integridad de los archivos

Para probar la integridad de un archivo comprimido ZST, use el indicador -t como se muestra en el comando a continuación:

sudo ZSTD -T System -Backup.zest

Conclusión

Como podemos ver en los ejemplos, ZSTD es un poderoso algoritmo de compresión con numerosos casos de uso. Para obtener más información sobre cómo funciona y su implementación, consulte la página del hombre y el experimento.

Gracias por leer.