Hinweis: Das Forum wird geschlossen! Neue Registrierungen sind nicht mehr möglich!

 Zurück zu Pro-Linux   Foren-Übersicht   FAQ     Suchen    Mitgliederliste
Verzeichnisse aus 'find' ausschliessen

 
Neuen Beitrag schreiben   Auf Beitrag antworten    Pro-Linux Foren-Übersicht -> Sonstiges
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
tuxic trace
Gast





BeitragVerfasst am: 26. Jul 2002 12:44   Titel: Verzeichnisse aus 'find' ausschliessen

Hallo,

ich hab ein Verzeichnis, den Unterverzeichnissen:

aepfel
brinen
orangen
bananen
himbeeren

Jetzt möchte ich mit find alle Verzeichnisse außer "orangen" und "bananen/nuesse" (also bananen schon, aber nicht das Unterverzeichnis von bananen, names "nuesse" durchsuchen). Die manpage schlägt "-prune" vor, klappt aber nicht.
find . ! orangen ! bananen\/nuesse -name .... klappt auch nicht

Wer hat des Rätsels Lösung ?
 

ratte
Gast





BeitragVerfasst am: 26. Jul 2002 22:47   Titel: Re: Verzeichnisse aus 'find' ausschliessen

man muss ein bisserl mit relativen pfaden jonglieren, dann funzts:
code:

$ pwd
/home/ratte/temp
$ ls
perl schwob
$ find . -path './schwob' -prune -o -print
.
./perl
./perl/1
$ # good, hurrey
$
$ cd ../
$ pwd
/home/ratte
$ find temp -path './temp/schwob' -prune -o -print
temp
temp/perl
temp/perl/1
temp/schwob
temp/schwob/webschwob.lex
temp/schwob/lex.yy.c
$ # not so good, what a pity
$
$ find ./temp/ -path './temp/schwob' -prune -o -print
./temp/
./temp/perl
./temp/perl/1
$ # very good, double-hurrey



ratte
 

tuxic trace
Gast





BeitragVerfasst am: 29. Jul 2002 9:30   Titel: Re: Verzeichnisse aus 'find' ausschliessen

Danke. Wenn mich nicht alle täuscht, hatte ich das "-o" nach dem "-prune" vergessen. Werds heut abend mal probieren, wenn das Wetter es denn zuläßt Smile
 

cd



Anmeldungsdatum: 19.12.2000
Beiträge: 114

BeitragVerfasst am: 30. Jul 2002 7:02   Titel: Re: Verzeichnisse aus 'find' ausschliessen

find . ! -name orangen ! -name bananen\/nuesse ... (jede -name-Option wird durch ! invertiert, wildcard * per \ quoten: \* )

Gruss, Clemens


Zuletzt bearbeitet von cd am 30. Jul 2002 7:02, insgesamt 1-mal bearbeitet
 
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden

Basti_litho
Gast





BeitragVerfasst am: 31. Jul 2002 18:39   Titel: Re: Verzeichnisse aus 'find' ausschliessen

hallo Clemens,

also bei mir klappt das mit dem negieren nicht er ignoriert das einfach. Ich habe es einige male probiert, dabei immer wieder kontrolliert ob ichs falsch geschrieben habe. Leider nicht. :)

Gruß
Basti_litho
 

Basti_litho
Gast





BeitragVerfasst am: 01. Aug 2002 10:44   Titel: Re: Verzeichnisse aus 'find' ausschliessen

Hallo,

also ich glaube ich habe des Rätsels lösung gefunden:

Um ein Verzeichniss oder eine Datei auszuschließen muss man entweder für jedes Verzeichnis bzw. Datei ein " -path datei -prune" schreiben, wobei dann noch die einzelnen "ausklammerungen" voneinander mit
einmem "-o" zu trennen sind.

Einfacher kann man sich manchen indem man die verzeichnisse in einer klammer zusammenschließt.

Beispiel:

Ich möchte die gesammte Festplatte nach ".txt" dateien durchsuchen, aber weder /mnt/server noch /cdrom oder gar /cdrecorder.

Dieser befehl würde das erledigen:

find / \( -path /mnt/server -o -path /cdrom -o -path /cdrecorder \) -prune -o -name *.txt -print

Dieser Befehl sieht zwar ein bisschen umfangreich aus ist aber wenn man ihn ein paar mal angewendet hat gut zu merken

(Die "\" müssen sein um die klammer vor der shell zu schützen - sonst gehts nicht)

Mfg
 

Beiträge vom vorherigen Thema anzeigen:   
     Pro-Linux Foren-Übersicht -> Sonstiges Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehen Sie zu:  

Powered by phpBB © phpBB Group
pro_linux Theme © 2004 by Mandaxy