tar -Syntax
-
Hallo,
ich habe vor mir eine kleine Datensicherung mit Shell-Skript und tar zu bauen, prinzipell kein PRoblem, aber ich möchte gerne ein Verzeichnis tar-en, aber einzelne Unterverzeichnisse ausschliessen, z.B.
Verzeichnis: daten
unterverzeichnisse: daten1,daten2,daten3,daten4nun möchte ich "sagen" tar-e mir das Verzeichnis Daten, aber ohne die Verzeichnisse: daten2 und daten3
Die man-Page sagt, es sollte mit -X funktionieren, goole sagt:
es sollte mit --exclude-from='Datei mit den Verzeichnissen'
Aber das alles funzt nicht.hat jemand ein Beispiel für mich?
Das mit der Exclude-Datei ist ja perfekt, die könnte ich ja immer anpassen.Danke für Eure Hilfe.
Gruss AlexK
-
Ich habe es rausbekommen, ein bisschen stures probieren hat es gebracht:
#tar -cv --exclude-from=exclude_file -f /test.tar ./*
in der exclude_file -Datei stehen die Verzeichnisse drin
#more exclude_file
*daten2*
*daten3*Gruss Alex
-
Geht doch bestens:
~ % ls tmp a b c x y z ~ % cat exclude tmp/x tmp/y tmp/z ~ % tar --exclude-from=exclude -cf tmp.tar tmp
-
Globs da drin sind keine gute Idee, mach das lieber ohne die *.
-
Hallo,
das mit der Exclude-file-List funktioniert nun perfekt, ich habe die * weg gelassen, danke für den Tip
Jetzt habe ich aber ein neues Problem, ich kann mein Archiv nicht komprimieren mit der Option -z
ich habe folgenden Code probiert:
tar --exclude-from=exclude_file --totals -cvf /dev/st0 ./*
tar -cvz --exclude-from=exclude_list --totals -f /dev/st0 /var/lib/mysql/allgemein /etc /home
wobei ersteres nur der Testcode ist.
Das Teil will nicht komprimieren, es legt mir bei -z nur eine datei an ./z
Was mache ich falsch?
Gruss Alex
-
Hallo,
man, jetz thabe ich es anders versucht aber ich bin nicht fähig, das zu ver-pipe-en
tar --exclude-from=exclude_file --totals -cvf /temp/dasi.tar ./* |gzip -f > /dev/st0
kommt der Fehler:
**Total bytes written: 20480 (20KiB, 3.8MiB/s)gzip: stdout: Invalid argument
**
wobei das erst vom Tar-kommt, funktioniert, aber muss gzip das nicht auf der stdin erwarten? bin ich jetzt ganz blöd?Gruss Alex