Hallo Leute! Lassen Sie uns heute eine ordentliche Lösung finden tar
Trick, nach dem oft gefragt wird: Wie tariert man Dateien und Ordner? in einem Verzeichnis, ohne das übergeordnete Verzeichnis in den Tarball aufzunehmen? Dies ist besonders nützlich, wenn Sie nur den Inhalt und nicht die Ordnerstruktur benötigen.
Das klassische Tar-Puzzle
Stellen Sie sich vor, Sie haben ein Verzeichnis Data
gefüllt mit Dateien und anderen Ordnern. Sie möchten eine erstellen Data.tar
Archiv von allem darin Data
aber ohne die Data
Verzeichnis selbst ist Teil des Archivs. Klingt knifflig, oder? Nicht wirklich!
Tauchen Sie ein in die Befehlszeile
Hier ist, wie Sie es tun:
- Navigieren Sie zum übergeordneten Verzeichnis: Zuerst müssen Sie sich in dem Verzeichnis befinden, das enthält
Data
.
cd /path/to/parent
- Verwenden Sie Tar mit Platzhaltern: Der Trick besteht darin, Platzhalter zu verwenden. Anstatt zu erzählen
tar
archivierenData
, sagen Sie ihm, dass es alles archivieren soll innerhalbData
.
tar -cvf Data.tar -C Data .
Hier -C Data
ändert das Verzeichnis in Data
zuerst und .
bedeutet alles darin.
Warum dies wichtig ist
Diese Methode ist aus verschiedenen Gründen praktisch:
- Selektive Archivierung: Sie erhalten die Inhalte ohne die zusätzliche Ordnerebene, perfekt für bestimmte Sicherungs- oder Bereitstellungsszenarien.
- Flexibilität: Es ermöglicht eine bessere Kontrolle über die Struktur Ihrer archivierten Daten.
- Sauber und ordentlich: Ideal, wenn Sie Dateien entpacken möchten, ohne ein zusätzliches Verzeichnis zu erstellen.
Lassen Sie uns nun einige der anderen Szenarien untersuchen.
Szenario 1: Tar-spezifische Dateitypen
Angenommen, Sie möchten nur bestimmte Dateitypen innerhalb des Verzeichnisses tarieren. Sie können den Befehl find mit tar kombinieren:
cd /path/to/parent
tar -cvf Data.tar -C Data $(find . -name "*.txt" -type f)
Dieser Befehl archiviert nur .txt
Dateien von der Data
Verzeichnis.
Szenario 2: Ausschließen bestimmter Dateien
Wenn Sie bestimmte Dateien oder Muster ausschließen möchten:
cd /path/to/parent
tar --exclude='*.log' -cvf Data.tar -C Data .
Dies schließt alle aus .log
Dateien aus dem Archiv.
Szenario 3: Tarieren und komprimieren im laufenden Betrieb
Um den Tarball sofort zu komprimieren:
cd /path/to/parent
tar -czvf Data.tar.gz -C Data .
Dadurch wird ein komprimierter Tarball mit dem Inhalt von erstellt Data
.
Szenario 4: Inkrementelles Backup
Wenn Sie inkrementelle Sicherungen des Inhalts durchführen:
cd /path/to/parent
tar --listed-incremental=/path/to/snapshot.file -cvf Data.tar -C Data .
Dadurch wird ein Tarball erstellt, während die Änderungen seit der letzten Sicherung aufgezeichnet werden.
Fazit
Diese Szenarien veranschaulichen die Vielseitigkeit von tar
. Egal, ob Sie Backups verwalten, Software bereitstellen oder einfach nur Dateien organisieren, tar
bietet eine auf Ihre Bedürfnisse zugeschnittene Lösung. Denken Sie immer daran, zum richtigen Verzeichnis zu navigieren und Platzhalter oder bestimmte Befehle zu verwenden, um zu steuern, was in Ihren Tarball aufgenommen wird.
Entdecken, experimentieren und beherrschen Sie diese Tricks, um Ihre Linux-Reise effizienter und angenehmer zu gestalten!
Hallo, ich bin Himadri Das, ich bin Bloggerin und Open-Source-Mitwirkende. Ich verfüge über etwa 11 Jahre Erfahrung im Bereich Informationstechnologie. Derzeit arbeite ich in einem Startup-Unternehmen als Qualitätssicherungsmanager. Ich habe praktische Erfahrung mit Appium, Selenium, QTP, Locust, Automatisierungs-Framework, Leistungstests, Funktionstests, Java, Python, Shell-Scripting, MySql, Redis, Kafka usw. Neben meiner Arbeit und dem Schreiben von Blogs liebe ich es zu spielen Gitarre, liebe es zu reisen und liebe es, Cricket und Fußball zu schauen. Wenn Sie mehr über mich erfahren möchten, besuchen Sie bitte mein LinkedIn-Profil.
Hallo Mitleser,
Wir sind ein kleines Team bei Techiescience, das hart mit den Großen zusammenarbeitet. Wenn Ihnen gefällt, was Sie sehen, teilen Sie unsere Inhalte bitte in den sozialen Medien. Ihre Unterstützung macht einen großen Unterschied. Danke schön!