Para obtener un archivo zip nuevo al igual que lo hace tar, ¿debo realizarlo rm foo.zipantes de ejecutarlo zip?
$ mkdir foo; touch foo/bar
$ zip -r foo.zip foo
adding: foo/ (stored 0%)
adding: foo/bar (stored 0%)
$ rm foo/bar; touch foo/baz
$ zip -r foo.zip foo
adding: foo/ (stored 0%)
adding: foo/baz (stored 0%)
$ unzip -l foo.zip
Archive: foo.zip
Length Date Time Name
--------- ---------- ----- ----
0 2011-10-27 07:49 foo/
0 2011-10-27 07:49 foo/bar
0 2011-10-27 07:49 foo/baz
--------- -------
0 3 files
command-line
zip
un sari
fuente
fuente

-FSno es-Fy-Sjuntos. Esto ha estado allí desde zip 3.0 al menos. Compruebeman zip.Zip 3.0y no funcionaZip 2.32(no eliminó los archivos antiguos en el paquete zip)-FS -rverdad?Una alternativa al uso de la
-FSopción (o eliminar el antiguo archivo ZIP), y literalmente sobrescribir el archivo ZIP existente, es solicitar lazipsalida a stdin y redirigir la salida al archivo de su elección:Si existe foo.zip, se sobrescribirá mediante la redirección de shell, lo que significa que obtendrá un nuevo archivo ZIP nuevo el 100% del tiempo, cada vez 🙂
fuente