El trabajo con ZIP en línea de comandos lo puedes hacer desde cualquier sistema, desde que tengas el compresor/descompresor instalado.
En Linux no está incluido de casa dentro de todas las distros, pero lo puedes instalar fácilmente. Por ejemplo en una instalación básica de Ubuntu Server no se encuentra, por lo que tendrás que usar el gestor de paquetes de turno para instalarlo.
En distribuciones basadas en Debian usas apt-get por ejemplo, así:
apt-get install zip
Que ahora también lo puedes resumir con:
apt install zip
O si no tienes permisos, prueba en modo superusuario:
sudo apt-get install zip
Si usas una distribución que tiene yum como gestor de paquetes.
sudo yum install zip
Instalado el paquete zip ya puedes comprimir y descomprimir archivos a través de la línea de comandos.
Comprimir un archivo: El comando zip se usa de esta manera.
zip ARCHIVO_COMPRIMIDO_DESTINO.zip ARCHIVO_A_COMPRIMIR
Por ejemplo:
zip archivo.zip index.zip
Comprimir un directorio y todos los subdirectorios: Con la opción "-r" hacemos que la compresión sea recursiva, con lo que se consigue comprimir un directorio con todos sus subdirectorios.
zip -r destino.zip
Este comando en tu terminal comprime todos los archivos del directorio actual y todos sus subdirectorios y lo guarda en destino.zip
zip -r destino.zip directorio_a_comprimir
Este comando comprime el directorio llamado "directorio_a_comprimir", que está en la carpeta actual y lo manda todo a destino.zip.
Descomprimir un zip: Esto se hace con otro comando diferente, que generalmente creo que ya viene instalado. El comando es unzip, pero si no lo tuvieras, será instalarlo en el sistema con apt o yum.
unzip archivo.zip
Eso descomprime el fichero "archivo.zip" del directorio actual.
Una opción que te interesa tener a mano es "-v" que sirve para que te muestre en pantalla una descripción del proceso a medida que lo va completando. Es muy útil cuando tienes muchos archivos, para ver lo que está ocurriendo mientras se completa el comando.