Desde la línea de comando, ¿cómo comprimo archivos y directorios específicos en una carpeta comprimida?

Desde la línea de comando, ¿cómo comprimo archivos y directorios específicos en una carpeta comprimida?

Estoy trabajando en un directorio que se parece a este:

folder
  >.git
  >css
  >img
  >js
  Archive.zip
  bla.html
  bla.yml

Durante el trabajo en este proyecto, tengo que comprimir con mucha frecuencia el contenido de esta carpeta con la excepción de Archive.zip y el directorio .git (la nueva carpeta comprimida debe reemplazar el archivo Archive.zip anterior).

Estoy haciendo esto presionando Mayús y seleccionando los archivos apropiados> haciendo clic derecho> comprimiendo. Esto no es tan eficiente como podría ser.

¿Es posible utilizar el zipcomando desde la línea de comando para lograr esto? ¿O sería mejor escribir un comando personalizado para hacer esto?

Respuesta1

ejecutar desde ese directorio:

rm Archive.zip; zip Archive.zip -r . --exclude '.git/*'

rm eliminará el antiguo Archive.zip (debe hacerlo, o zip simplemente ACTUALIZARÁ el contenido actual de Archive.zip); zip -r .agregará todos los directorios y carpetas de forma recursiva y --exclude '.git/*'excluirá los directorios determinados.

información relacionada