Dateien suchen in / außer aber im Unterverzeichnis /var/www

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
Benutzeravatar
pangu
Beiträge: 1400
Registriert: 15.11.2011 20:50:52
Lizenz eigener Beiträge: GNU General Public License
Wohnort: /proc/1

Dateien suchen in / außer aber im Unterverzeichnis /var/www

Beitrag von pangu » 18.01.2012 18:28:21

Hallo,

ich krieg's nicht gebacken und hoffe auf eure profesionelle HIlfe. Ich möchte meine Festplatte alle Dateien und Ordner anzeigen lassen, auf die der Benutzer maxmustermann zugreifen kann. Jedoch soll die Suche das Verzeichnis+Unterverzeichnisse von /var/www komplett weglassen.

Ich habs erstmal mit "find / -type f -user maxmustermann" probiert, aber das stimmt ja nicht. Außerdem werden damit nur die DATEIEN angezeigt, aber ich will auch die Ordner angezeigt bekommen. Wie sag ich ihm aber dass er NICHT in /var/www suchen soll?

danke im voraus.
Man gibt Geld aus, das man nicht hat, um damit Dinge zu kaufen, die man nicht braucht, um damit Leute zu beeindrucken, die man nicht mag.

DeletedUserReAsG

Re: Dateien suchen in / außer aber im Unterverzeichnis /var/

Beitrag von DeletedUserReAsG » 18.01.2012 18:52:16

manpage hat geschrieben:

Code: Alles auswählen

-path Muster
              Der Dateiname passt zum Shell-Muster Muster. Die Metazeichen behandeln »/« oder ».« nicht besonders; daher wird zum Beispiel
                        find . -path "./sr*sc"
              einen  Eintrag  für  ein  Verzeichnis mit Namen »./src/misc« ausgeben (falls eines exisitert). Benutzen Sie -prune, um einen ganzen Ver‐
              zeichnisbaum zu ignorieren, anstatt jede Datei im Baum zu überprüfen. Um beispielsweise das Verzeichnis »src/emacs« und alle Dateien und
              Verzeichnisse darin zu überspringen und die Namen der anderen gefundenen Dateien auszugeben, versuchen Sie Folgendes:
                        find . -path ./src/emacs -prune -o -print
              Beachten  Sie,  dass  Mustervergleichstests  auf  den  ganzen  Dateinamen angewandt werden, beginnend von einem der auf der Befehlszeile
              benannten Startpunkte. Es würde nur Sinn ergeben, hier einen absoluten Pfadnamen zu benutzen, wenn der maßgebliche Startpunkt  auch  ein
              absoluter Pfad wäre. Dies bedeutet, dass dieser Befehl niemals auf etwas zutreffen wird:
                        find bar -path /foo/bar/myfile -print
              Das Prädikat -path wird auch auf HP-UX durch find unterstützt und wird in einer kommenden Version des POSIX-Standards enthalten sein.
Formatierung ist nun foo, und ich bin zu faul, das ordentlich zu quoten. Es hält dich aber keiner davon ab, auch mal deine lokale Doku ('man find') anzuschauen, je nach Systemeinstellung ist die auch auf deutsch zu haben (wie man sieht) und, wie ich finde, gut verständlich.

cu,
niemand

Benutzeravatar
Livingston
Beiträge: 1816
Registriert: 04.02.2007 22:52:25
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: 127.0.0.1

Re: Dateien suchen in / außer aber im Unterverzeichnis /var/

Beitrag von Livingston » 19.01.2012 12:52:26

pangu hat geschrieben:Hallo,
Ich habs erstmal mit "find / -type f -user maxmustermann" probiert, aber das stimmt ja nicht. Außerdem werden damit nur die DATEIEN angezeigt, aber ich will auch die Ordner angezeigt bekommen.
danke im voraus.
Warum benutzt Du dann die Option -type f?
Wie sag ich ihm aber dass er NICHT in /var/www suchen soll?
Die Aktion -prune kehrt die Auswertung eines Ausdrucks um.

Zusammen ergibt das:

Code: Alles auswählen

find / -path /var/www -prune -o -user maxmustermann
Das -o ist notwendig, weil der vorherige Teilausdruck eine logische Verneinung darstellt. Ohne logischen Operator oder mit -a wäre der gesamt Ausdruck falsch und es käme gar keine Ausgabe heraus.

Benutzeravatar
pangu
Beiträge: 1400
Registriert: 15.11.2011 20:50:52
Lizenz eigener Beiträge: GNU General Public License
Wohnort: /proc/1

Re: Dateien suchen in / außer aber im Unterverzeichnis /var/

Beitrag von pangu » 24.01.2012 11:20:15

vielen herzlichen Dank, ich denke ich habe es nun kapiert. Vor allem wegen dem -o was mich immer verwunderte und durcheinander brachte :)
Man gibt Geld aus, das man nicht hat, um damit Dinge zu kaufen, die man nicht braucht, um damit Leute zu beeindrucken, die man nicht mag.

Antworten