GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo puedo buscar archivos y comprimirlos en un archivo zip?

El comando que use ejecutará zip en cada archivo por separado, intente esto:

find . -name <name> -print | zip newZipFile.zip [email protected]

El [email protected] le dice a zip que lea los archivos de la entrada. Desde man zip(1),

[email protected] listas de archivos. Si una lista de archivos se especifica como [email protected] [No en MacOS], zip toma la lista de archivos de entrada de la entrada estándar en lugar de la línea de comando.


Tu respuesta está cerca, pero esto podría funcionar mejor:

find -regex 'regex' -exec zip filname.zip {} +

Eso pondrá todos los archivos coincidentes en un archivo zip llamado filename.zip. No tiene que preocuparse por los caracteres especiales en el nombre del archivo (como un salto de línea), lo que haría si canalizara los resultados.


También puede proporcionar los nombres como resultado de su comando de búsqueda:

zip name.zip `find . -name <name> -print`

Esta es una característica del shell que está utilizando. Puede buscar "comillas invertidas" para determinar cómo su shell maneja esto.


Linux
  1. Cómo archivar archivos y directorios en Linux [Parte 2]

  2. Cómo extraer archivos .gz y .tar.gz en Linux

  3. ¿Buscar archivos en un directorio y enviar el resultado a un archivo de texto?

  4. Cómo buscar archivos para contenido

  5. Cómo buscar un archivo en archivos war, ear y jar recursivamente en Linux

Cómo comparar y fusionar archivos de texto en Linux

Cómo comprimir y descomprimir archivos en Ubuntu

Cómo encontrar archivos duplicados en Linux y eliminarlos

Cómo copiar archivos y directorios en la terminal de Linux

Cómo realizar una búsqueda Grep en todos los archivos y en todos los directorios

Cómo comprimir un archivo en Linux