Solo puedes usar *
; no hay necesidad de *.*
. Las extensiones de archivo no son especiales en Unix. *
coincide con cero o más caracteres, incluido un punto. Entonces coincide foo.png
, porque eso es cero o más caracteres (siete, para ser exactos).
Tenga en cuenta que, *
de forma predeterminada, no coincide con los archivos que comienzan con un punto (tampoco lo hace *.*
). Esto es a menudo lo que quieres. Si no, en bash, si shopt -s dotglob
lo hará (pero aún excluirá .
y ..
). Otros shells tienen diferentes formas (o ninguna) de incluir archivos de puntos.
Alternativamente, zip
también tiene una -r
opción (recursiva) para hacer árboles de directorios completos a la vez (y no tener que preocuparse por el problema del archivo de puntos):
zip -r myfiles.zip mydir
donde mydir
está el directorio que contiene tus archivos. Tenga en cuenta que el zip producido contendrá la estructura del directorio, así como los archivos. Como señala Peter en su comentario, esto generalmente se ve como algo bueno: extraer el zip almacenará perfectamente todos los archivos extraídos en un subdirectorio.
También puede decirle a zip que no almacene las rutas con la opción -j
/ --junk-paths
.
El zip
comando viene con documentación que le informa sobre todas sus (muchas) opciones; escriba man zip
para ver esa documentación. Esto no es exclusivo de zip; Puede obtener documentación para la mayoría de los comandos de esta manera.
zip myarch.zip mydir/*
?