Ich habe irgendwo auf der Suse Platte in einem tar Archiv eine wichtige Datei in der "suchwort" steht. Gibt es ein grep, dass tar files lesen kann? Danke Astrid
Ich habe irgendwo auf der Suse Platte in einem tar Archiv eine wichtige Datei in der "suchwort" steht. Gibt es ein grep, dass tar files lesen kann?
$ tar tf datei.tar | grep suchwort
Oh sorry, hatte die Frage falsch verstanden. Auf die Schnelle würd ich sonst sagen: $ grep suchwort `tar tf datei-tar`
Hi Paolo, Paolo Herms schrieb:
Ich habe irgendwo auf der Suse Platte in einem tar Archiv eine wichtige Datei in der "suchwort" steht. Gibt es ein grep, dass tar files lesen kann?
$ tar tf datei.tar | grep suchwort
Oh sorry, hatte die Frage falsch verstanden. Auf die Schnelle würd ich sonst sagen: $ grep suchwort `tar tf datei-tar`
Das liefert das Ergebnis auch nur wenn es diese datei nochmal auf der Platte in genau dem pfad der im tar steht gibt, also so: falk@falk:~> echo tast > t1.txt falk@falk:~> echo test > t2.txt falk@falk:~> tar cf t3.tar t?.txt falk@falk:~> grep test `tar tf t3.tar` t2.txt:test falk@falk:~> rm t1.txt t2.txt falk@falk:~> grep test `tar tf t3.tar` grep: t1.txt: Datei oder Verzeichnis nicht gefunden grep: t2.txt: Datei oder Verzeichnis nicht gefunden Also das ist wohl nicht die Lösung. ich denke da geht nur auspacken (einzeln) nachsehen, löschen, als script. Gruss Falk
Hi Paolo, Paolo Herms schrieb:
Ich habe irgendwo auf der Suse Platte in einem tar Archiv eine wichtige Datei in der "suchwort" steht. Gibt es ein grep, dass tar files lesen kann?
$ tar tf datei.tar | grep suchwort
damit durchsuchst du nur die liste der dateinamen nach dem suchwort Gruss Falk
Am Mit, 30 Jun 2004, schrieb Maggi:
Ich habe irgendwo auf der Suse Platte in einem tar Archiv eine wichtige Datei in der "suchwort" steht. Gibt es ein grep, dass tar files lesen kann? Danke Astrid
Hallo Astrid zgrep <suchwort> <tarfile> P.S Du hast einen solch schönen Vornamen, den könntest du doch sicher als Absendenamen eintragen. Bei Maggi muss ich immer an Wuerze denken... Gruesse PeteR
Am Mittwoch, 30. Juni 2004 15:45 schrieb Peter Soltau:
Am Mit, 30 Jun 2004, schrieb Maggi:
Ich habe irgendwo auf der Suse Platte in einem tar Archiv eine wichtige Datei in der "suchwort" steht. Gibt es ein grep, dass tar files lesen kann? Danke Astrid
Hallo Astrid
zgrep <suchwort> <tarfile>
Nein - damit wird tarfile als eine Datei betrachtet - Du kriegst damit nicht raus, in _welcher_ Datei des Archivs das Suchwort steht. Du kannst es höchstens erraten, wenn das Wort zufälligerweise in der ersten Zeile der Datei steht - ansonsten siehst Du den Dateinamen nicht: jan@jack:~/tmp/tar-test> echo "suchwort" >datei1 jan@jack:~/tmp/tar-test> echo "anderes wort" >datei2 jan@jack:~/tmp/tar-test> echo "mal was ganz anderes" >datei3 jan@jack:~/tmp/tar-test> for i in `seq 1 10`; do echo wort$i
datei3; done jan@jack:~/tmp/tar-test> tar cvzf test.tgz datei* datei1 datei2 datei3 jan@jack:~/tmp/tar-test> zgrep wort test.tgz datei10100644000175000001440000000001110070606604010627 0ustar januserssuchwort datei20100644000175000001440000000001510070606614010635 0ustar janusersanderes wort wort1 wort2 wort3 wort4 wort5 wort6 wort7 wort8 wort9 wort10
Du siehst: nur in datei1 und datei2, die das Wort in der ersten Zeile enthalten, kann man mit ein wenig Fantasie den Dateinamen erraten. IMHO hilft nur Auspacken und dann per grep -l suchen. Jan
Am Mit, 30 Jun 2004, schrieb Jan Trippler:
Am Mittwoch, 30. Juni 2004 15:45 schrieb Peter Soltau:
zgrep <suchwort> <tarfile>
Nein - damit wird tarfile als eine Datei betrachtet - Du kriegst damit nicht raus, in _welcher_ Datei des Archivs das Suchwort steht. Du kannst es höchstens erraten, wenn das Wort zufälligerweise in der ersten Zeile der Datei steht - ansonsten siehst Du den Dateinamen nicht:
[...] Das ist mit Sicherheit richtig, was du schreibst. Ich hatte die Frage so verstanden, dass es Astrid nur darum ging, das richtige tar-file zu identifizieren in dem $SUCHWORT vorkommt und nicht die Datei _im_ Tarfile.
Jan
Gruß PeteR
participants (5)
-
Falk Sauer
-
Jan.Trippler@t-online.de
-
Maggi
-
Paolo Herms
-
Peter Soltau