Sie können mehrere Ausschlussoptionen für tar so haben
$ tar --exclude='./folder' --exclude='./upload/folder2' -zcvf /backup/filename.tgz .
usw wird funktionieren. Stellen Sie sicher sicher um --exclude
zu setzen vorher die Quell- und Zielelemente.
alte Frage mit vielen Antworten, aber ich fand, dass keine klar genug für mich war, also möchte ich meinen Versuch hinzufügen.
wenn Sie die folgende Struktur haben
/home/ftp/mysite/
mit folgenden Dateien/Ordnern
/home/ftp/mysite/file1
/home/ftp/mysite/file2
/home/ftp/mysite/file3
/home/ftp/mysite/folder1
/home/ftp/mysite/folder2
/home/ftp/mysite/folder3
Sie möchten also eine TAR-Datei erstellen, die alles in /home/ftp/mysite enthält (um die Site auf einen neuen Server zu verschieben), aber file3
ist nur Schrott, und alles in folder3
wird auch nicht benötigt, also überspringen wir diese beiden.
wir verwenden das Format
tar -czvf <name of tar file> <what to tar> <any excludes>
wobei c =create, z =zip und v =verbose (Sie können die Dateien sehen, während sie eingegeben werden, was nützlich ist, um sicherzustellen, dass keine der ausgeschlossenen Dateien hinzugefügt werden). und f=Datei.
mein Befehl würde also so aussehen
cd /home/ftp/
tar -czvf mysite.tar.gz mysite --exclude='file3' --exclude='folder3'
Beachten Sie, dass die ausgeschlossenen Dateien/Ordner relativ zum Stammverzeichnis Ihres tar sind (ich habe hier den vollständigen Pfad relativ zu / ausprobiert, aber ich kann das nicht zum Laufen bringen).
Ich hoffe, das hilft jemandem (und mir, wenn ich es das nächste Mal google)
Mögliche Optionen zum Ausschließen von Dateien/Verzeichnissen von der Sicherung mit tar:
Dateien mit mehreren Mustern ausschließen
tar -czf backup.tar.gz --exclude=PATTERN1 --exclude=PATTERN2 ... /path/to/backup
Schließen Sie Dateien mithilfe einer Ausschlussdatei aus, die mit einer Liste von Mustern gefüllt ist
tar -czf backup.tar.gz -X /path/to/exclude.txt /path/to/backup
Schließen Sie Dateien mit Tags aus, indem Sie eine Tag-Datei in einem beliebigen Verzeichnis platzieren, das übersprungen werden soll
tar -czf backup.tar.gz --exclude-tag-all=exclude.tag /path/to/backup
Sie können Verzeichnisse mit --exclude
ausschließen für tar.
Wenn Sie alles außer /usr
archivieren möchten Sie können verwenden:
tar -zcvf /all.tgz / --exclude=/usr
In Ihrem Fall vielleicht so etwas wie
tar -zcvf archive.tgz arc_dir --exclude=dir/ignore_this_dir