TAR oder ZIP aktuelles Verzeichnis ohne die generierte Datei

1152
Ion Bazan

Ich versuche, alle Dateien und Unterverzeichnisse im aktuellen Verzeichnis zu komprimieren oder zu tarieren und in der zu speichernden Datei zu speichern. Das Problem ist, dass -x Shitch nicht funktioniert - Dateien werden gezippt und in einer zufällig benannten Datei gespeichert.

zip -r backup.zip ./* -x backup.zip 

Ich habe es versucht, aber der Code funktionierte nicht richtig.

Gibt es eine Möglichkeit, dies zu tun, ohne das Archivverzeichnis zu speichern und es anschließend wieder in das Verzeichnis ./ zu verschieben?

Danke im Voraus.

0

2 Antworten auf die Frage

0
l0b0

./*Wird von der Shell erweitert, bevor sie an den Befehl gesendet wird. Die einzige Möglichkeit zipzum Einschließen backup.zipbesteht darin, wenn sie vor dem Ausführen des Befehls vorhanden ist.

tar kann es tun:

$ cd -- "$(mktemp -d)"  $ touch -- $'--$`!*@\a\b\E\f\r\t\v\\\'"\360\240\202\211 \n' $ tar -czf test.tar.gz ./* $ ls --$`!*@???????\'" ? test.tar.gz $ tar -tvf test.tar.gz  -rw-rw-r-- user/group 0 2013-06-26 14:38 ./--$`!*@\a\b\033\f\r\t\v\\'" \n 
0
diablo

Zip versucht nicht, die eigene Datei zu komprimieren, daher müssen Sie -x nicht verwenden. Angenommen, backup.zip ist bereits im aktuellen Verzeichnis vorhanden und wir versuchen, die ZIP-Datei zu aktualisieren:

# zip -r backup.zip ./* updating: libproxychains4.so (deflated 61%) updating: README (deflated 55%) updating: TODO (deflated 17%) updating: COPYING (deflated 62%) updating: src/ (stored 0%) updating: src/proxychains (deflated 65%) updating: src/core.c (deflated 70%) updating: src/common.o (deflated 68%) updating: src/core.o (deflated 66%) updating: src/main.c (deflated 58%) updating: src/core.h (deflated 66%) updating: src/libproxychains.c (deflated 69%) updating: src/proxyresolv (deflated 30%) updating: src/main.o (deflated 67%) updating: src/libproxychains.o (deflated 70%) updating: src/common.h (deflated 55%) updating: src/proxychains.conf (deflated 57%) updating: src/common.c (deflated 62%) updating: proxychains.lsm (deflated 28%) updating: configure (deflated 65%) updating: AUTHORS (deflated 45%) updating: dist/ (stored 0%) updating: dist/config.mak (deflated 43%) updating: ChangeLog (deflated 66%) updating: config.mak (deflated 37%) updating: proxychains4 (deflated 62%) updating: tests/ (stored 0%) updating: tests/test_getaddrinfo.c (deflated 51%) updating: Makefile (deflated 58%) 

Verwenden Sie -x, wenn Sie eine Datei wirklich von Ihrer Sicherung ausschließen müssen.