find



SYNTAX
       find [-H] [-L] [-P] [Verzeichnis...] [Ausdruck]

BESCHREIBUNG
       Diese  Handbuchseite  beschreibt  die  GNU  Version von find.  GNU find
       durchsucht eine oder mehrere Verzeichnishierarchien und bewertet  dabei
       den  Ausdruck  von  links  nach rechts entsprechend den Regeln der Pri-
       orität (siehe Abschnitt OPERATOREN) bis das Ergebnis bekannt  ist  (die
       linke  Seite  ist falsch für UND Operatoren, wahr für ODER Operatoren).
       Anschließend führt find die Suche mit der nächsten Datei fort.


OPTIONEN
       Die Optionen -H, -L und -P bestimmen den Umgang mit symbolischen Links.
       Darauf folgende Kommandozeilenparamter müssen die Datei- oder Verzeich-
       nisnamen sein, die untersucht werden sollen.

       Das erste Argument, das mit einem -, einer Klammer (, ), einem Komma  ,
       oder  einem  Ausrufezeichen !  beginnt, wird als Anfang eines Ausdrucks
       interpretiert, der bestimmt, wonach gesucht wird.  Alle Argumente davor
       werden als Verzeichnisnamen angesehen.

       Wenn  kein  Verzeichnis  angegeben  ist,  wird das aktuelle Verzeichnis
       genommen.  Wenn keine Aktion angegeben ist, wird die Aktion -print aus-
       geführt (es wird stattdessen empfohlen -print0 zu verwenden).

       -P     Keinen  symbolischen Links folgen.  Dies ist das Standardverhal-
              ten.  Wenn find eine Datei untersucht  oder  Informationen  über
              diese  ausgibt,  und  die  Datei ein symbolischer Link ist, dann
              werden die Informationen von dem symbolischen Link  selbst  ver-
              wendet.

       -L     Symbolischen Links folgen.  Wenn find eine Datei untersucht oder
              Informationen über diese ausgibt, dann werden die  Informationen
              von  der  Datei verwendet, auf die der symbolische Link verweist
              (es sei denn, der Link ist kaputt oder find nicht  in  der  Lage
              ist,  die  Datei  zu  untersuchen, auf die der Link zeigt).  Die
              Verwendung dieser Option impliziert die  Option  -noleaf.   Wenn
              Sie  später  die  Option  -P  verwenden, wird -noleaf immer noch
              Auswirkungen zeigen.  Wenn -L aktiv ist und find einen symbolis-
              chen Link zu einem Unterverzeichnis während seiner Suche findet,
              wird das Unterverzeichnis durchsucht, auf  das  der  symbolische
              Link zeigt.

              Wenn  die  Option  in Kraft tritt, wird das Prädikat -type immer
              auf den Typ der Datei angewendet, auf die ein symbolischer  Link
              zeigt, anstatt auf den Link selbst (es sei denn, der symbolische
              Link ist kaputt).  Die  Verwendung  von  -L  bewirkt,  dass  die
              Prädikate -lname und -ilname immer logisch falsch zurückliefern.


       -H     Keinen symbolischen Links folgen, es sei denn die  Parameter  in

AUSDRÜCKE
       Ein  Ausdruck besteht aus Optionen (welche das allgemeine Verhalten der
       Kommandos bestimmen und immer wahr  zurückgeben),  Tests  (welche  wahr
       oder   falsch  zurückgeben)  und  Aktionen  (welche  wahr  oder  falsch
       zurückgeben).  Optionen, Tests  und  Aktionen  werden  über  Operatoren
       verknüpft.  Wenn kein Operator explizit angeben ist wird der UND Opera-
       tor -and verwendet.  Wenn der Ausdruck keine andere Aktion  als  -prune
       enthält,  wird  mit allen Dateien, für welche der Ausdruck wahr ergibt,
       die Aktion -print durchgeführt.


   OPTIONEN
       Alle Optionen geben immer logisch wahr zurück.  Mit  der  Ausnahme  von
       -follow  und  -daystart  haben  sie immer Auswirkungen und werden nicht
       erst dann verarbeitet, wenn ihre Position im  Ausdruck  erreicht  wird.
       Daher  sollten  ist es für bessere Lesbarkeit besser, sie an den Anfang
       des Ausdrucks zu stellen.  Eine Warnung wird ausgegeben, wenn  Sie  das
       nicht machen.

       -daystart
              mißt  die Zeiten für die -amin, -atime, -cmin, -ctime, -mmin und
              -mtime Eigenschaften vom Beginn des aktuellen Tages anstelle der
              letzten  24  Stunden.   Diese Option betrifft nur die Tests, die
              weiter hinten in der Kommandozeile geschrieben sind.

       -depth bearbeitet den Inhalt jedes Verzeichnisses vor  dem  Verzeichnis
              selbst.

       -follow
              Veraltet.   Verwenden Sie die Option -L stattdessen.  Dereferen-
              ziert symbolische Links.  Impliziert -noleaf.  Wenn  die  Option
              -H oder -L nicht angegeben wird, ändert die Position von -follow
              das Verhalten des Prädikats -newer.  Alle Dateien, die als Argu-
              mente  von  -newer aufgeszählt sind, werden dereferenziert, wenn
              es sich bei ihnen um symbolische  Links  handelt.   Das  gleiche
              gilt  für  -anewer und -cnewer.  Genauso wird das Prädikat -type
              immer auf den Typ der Datei angewendet, auf den der  symbolische
              Link  zeigt  und  nicht auf den Link selbst.  Die Verwendung von
              -follow hat zur Folge, dass die  Prädikate  -lname  und  -ilname
              immer logisch falsch zurückliefern.

       -maxdepth Ebenen
              steigt  bis  zu der gegebenen Zahl von Ebenen im Verzeichnisbaum
              auf (in der Hierarchie ab); bei 0 Ebenen werden  die  Tests  nur
              auf  die  in der Kommandozeile übergebenen Dateien und Verzeich-
              nisnamen angewendet

       -mindepth Ebenen
              steigt mindestens die gegebene Zahl von Ebenen  im  Verzeichnis-
              baum  auf  (in der Hierarchie ab); bei einer Ebene werden die in
              der Kommandozeile genannten Dateien und  Verzeichnisnamen  nicht
              bearbeitet

       -xdev  durchsucht  keine  Verzeichnisse  in  anderen Dateisystemen (auf
              anderen Partitionen)


   Tests
       Alle numerischen Argumente können auf drei Arten angegeben werden:

              + N    steht für alle Zahlen größer als N

              - N    steht für alle Zahlen kleiner als N

              N      steht für genau N
       Alle Tests werden auf die Dateien  in  den  angegebenen  Verzeichnissen
       einzeln  angewendet.   Die  Tests  liefern  einen  Wahrheitswert  von 0
       (Wahr), wenn der Test erfolgreich war.

       Die Tests auf die erweiterten Zeitmarken (Zugriff und Erstellung)  wer-
       den  nur in solchen Verzeichnissen korrekt behandelt, die auf einem der
       neuen Linuxdateisysteme angesiedelt sind (e2fs, xiafs, new minix).  Auf
       den  anderen  Dateisystemen  wird  nur  das  Datum der letzten Änderung
       zuverlässig getestet. Das Ergebnis der anderen Tests hängt davon ab, ob
       der  letzte Zugriff bzw. die letzte Änderung so kurz zurückliegen, dass
       die veränderte I-Node noch im Arbeitsspeicher (Cache) ist. Dann  können
       auch für die Dateien der alten Dateisysteme alle drei Zeitmarken unter-
       schieden werden.

       -amin N
              auf die Datei ist vor N Minuten zugegriffen worden

       -anewer Referenzdatei
              auf die Datei ist vor weniger Zeit zugegriffen worden, als  seit
              der  letzten  Veränderung  der  Referenzdatei  vergangen ist; im
              Zusammenhang mit -follow tritt -anewer nur in Effekt, wenn -fol-
              low vor -anewer in der Kommandozeile steht

       -atime N
              auf die Datei ist vor N*24 Stunden zugegriffen worden

       -cmin N
              der Status der Datei wurde vor N Minuten geändert

       -cnewer Referenzdatei
              der  Status der Datei wurde vor weniger Zeit verändert, als seit
              der letzten Veränderung der Referenzdatei vergangen ist;  zusam-
              men  mit  -follow  tritt -cnewer nur in Effekt, wenn -follow vor
              -cnewer in der Kommandozeile steht

       -ctime N
              der Dateistatus wurde vor N*24 Stunden geändert

       -empty die reguläre Datei oder das Verzeichnis ist leer

       -links N
              die Datei hat N (harte) Links

       -lname Muster
              die  Datei  ist  ein  symbolischer  Link auf eine Datei oder ein
              Verzeichnis mit einem zum Muster passenden Namen

       -mmin N
              der Inhalt der Datei wurde vor N Minuten verändert

       -mtime N
              der Inhalt der Datei wurde vor IN*24 Stunden verändert

       -name Muster
              der Name der Datei passt zu dem Muster

       -newer Referenzdatei
              die Datei ist später verändert  worden  als  die  Referenzdatei;
              zusammen  mit  -follow  tritt -newer nur in Effekt, wenn -follow
              vor -newer in der Kommandozeile steht

       -nouser
              die Datei gehört keinem im System eingetragenen Benutzer

       -nogroup
              die Datei gehört keiner im System angemeldeten Gruppe

       -path Muster
              der Pfadname der Datei passt zum Muster"

       -perm Modus
              die Zugriffsrechte auf die Datei entsprechen  exakt  dem  Modus;
              der   Modus  kann  als  Oktalzahl  oder  mit  den  bei  chmod(1)
              beschriebenen Kennungen beschrieben werden, die Kennungen werden
              auf Modus 000bezogen

       -perm -Modus
              (mindestens) die Zugriffsrechte für den Modus sind gesetzt

       -perm +Modus
              die  Zugriffsrechte  entsprechen  höchstens dem Modus (oder sind
              weiter eingeschränkt)

       -regex Muster
              der Pfadname passt zu dem regulären Ausdruck Muster

       "size N[{c,k}]"
              die Datei belegt N Datenblöcke zu 512 Bytes, bzw. N Bytes und  N
              Kilobytes mit nachgestelltem c oder k

       -true  ist immer wahr

              l      symbolischer Link

              s      Socket

       -uid N die Kennziffer des Eigentümers ist N

       -used N
              auf die Datei ist N Tage nach der letzten  Änderung  zugegriffen
              worden

       -user Name
              die Datei gehört dem Anwender Name

       -xtype C
              das  gleiche  wie -type für alle Dateien, die keine symbolischen
              Links sind; wenn die Datei ein symbolischer  Link  ist  und  die
              Option  -follow  nicht  gesetzt ist, wird die Datei, auf die der
              Link zeigt, auf den Typ  C  geprüft;  wenn  die  Option  -follow
              gesetzt ist, ist der Test wahr, wenn C = l ist


   Aktionen
       -exec Kommando;
              führt  das  Kommando aus; die Aktion ist wahr, wenn das Kommando
              einen Status von Null liefert; alle auf den  Kommandonamen  fol-
              genden  Argumente  bis  zu  einem Semikolon ; werden als Komman-
              dozeilenargumente für das Kommando interpretiert; das  Semikolon
              kann  nicht weggelassen werden, und es muss durch mindestens ein
              Whitespace von der letzten Option getrennt werden; die Konstruk-
              tion {} wird durch den Pfadnamen der Datei ersetzt; die Klammern
              und das Semikolon müssen in der Kommandozeile für find  quotiert
              werden, damit sie nicht von der Shell bearbeitet werden

       -fprint Ausgabedatei
              schreibt den Pfadnamen der getesteten Datei in die Ausgabedatei;
              wenn die Ausgabedatei nicht existiert, wird sie  erzeugt,  sonst
              wird  sie erweitert; die Standardausgabe und die Standardfehler-
              ausgabe werden als /dev/stdout und /dev/stderr angesprochen

       -fprint0 Ausgabedatei
              schreibt den Namen der getesteten Datei in die Ausgabedatei  und
              schließt die Ausgabe mit einem Nullbyte ab, wie -print0

       -fprintf Ausgabedatei Format
              schreibt  den Namen der getesteten Datei in die Ausgabedatei und
              benutzt dabei das Format mit Sonderzeichen wie bei printf

       -ok Kommando;
              wie -exec, vor der Ausführung des Kommandos wird aber noch  eine
              Bestätigung  erwartet;  nur  eine  Eingabe, die mit einem B oder
              einem y beginnt, führt zur Ausführung des Kommandos

              \a     Alarmton

              \b     Rückschritt

              \c     Abbruch der Ausgabe

              \f     Seitenvorschub

              \n     Zeilenvorschub

              \r     Wagenrücklauf

              \t     horizontaler Tabulator

              \v     vertikaler Tabulator

              \\     der Backslash selbst

       ein Backspace gefolgt von irgendeinem anderen Zeichen wird als normales
       Zeichen interpretiert und einfach ausgegeben

              %%     das Prozentzeichen selbst

              %a     die  Zeit des letzten Zugriffs auf die Datei, in dem For-
                     mat der ctime Funktion

              %A k   die Zeit des letzten Zugriffs auf die Datei, in dem von k
                     bestimmte  Format; k hat dabei das gleiche Format wie der
                     entsprechende Parameter der strftime Funktion in C:

                      @      Sekunden seit dem 1.1.1970 0 Uhr GMT

                      H      Stunde (00 bis 23)

                      I      Stunde (01 bis 12)

                      k      Stunde (0 bis 23)

                      l      Stunde (1 bis 12)

                      M      Minute (00 bis 59)

                      p      PM oder AM

                      r      Zeit, 12 Stunden (hh:mm:ss: AM/PM)

                      S      Sekunden (00 bis 61)

                      T      Zeit, 24 Stunden (hh:mm:ss)

                      X      Zeit (H:M:S)

                      D      Datum (mm/dd/yy)

                      h      das gleiche wie b

                      j      der Tag im Jahr

                      m      die Zahl des Monats

                      U      die Nummer der Woche, Sonntag als erster  Wochen-
                             tag

                      w      die Zahl des Wochentags

                      W      die Nummer der Woche, Montag als erster Wochentag

                      x      Datum (mm/dd/yy)

                      y      die letzten beiden Stellen der Jahreszahl

                      Y      die Jahreszahl

              %b     die Dateigröße in 512 Byte Blöcken (aufgerundet)

              %c     das Datum der letzten  Statusänderung  im  Format  der  C
                     ctime Funktion

              %Ck    das  Datum  der  letzten  Statusänderung im Format der BR
                     strftime " Funktion; Parameter wie oben"

              %d     die Höhe der Datei  im  Verzeichnisbaum;  Null  bedeutet,
                     dass die Datei Kommandozeilenargument ist

              %f     der Name der getesteten Datei, ohne Verzeichnisse

              %g     der  Gruppenname  der getesteten Datei oder die Kennzahl,
                     wenn die Gruppe nicht eingetragen ist

              %G     die Gruppenkennzahl

              %h     die Verzeichnisnamen des Pfadnamen der getesteten Datei

              %H     das Kommandozeilenargument  (Test),  mit  dem  die  Datei
                     gefunden wurde

              %i     die Nummer der Inode der getesteten Datei

              %k     die aufgerundete Größe der getesteten Datei in Kilobytes

              %l     das  Objekt,  auf  die ein symbolischer Link zeigt; leer,
                     wenn die getestete Datei kein symbolischer Link ist

                     oben)

              %u     der Name des Eigentümers der getesteten  Datei  oder  die
                     Kennzahl, wenn der Benutzer nicht eingetragen ist

              %U     die Benutzerkennzahl des Eigentümers der getesteten Datei

       -prune wahr, wenn die Option -depth nicht angegeben ist; sonst  falsch.
              Wenn  die  Datei  ein Verzeichnis ist, wird nicht in dieses hin-
              abgestiegen.
              falsch,  wenn  die  Option  -depth  angegeben  ist,  hat   keine
              Auswirkungen.

       -ls    zeigt  das Verzeichnis in dem die getestete Datei gefunden wurde
              mit ls -dils an


   Operatoren
       Die Optionen, Tests und Aktionen können mit Operatoren  verknüpft  wer-
       den. Die Bearbeitung erfolgt prinzipiell von links nach rechts.

       ( Ausdruck )
              die Klammern fassen den Ausdruck zu einer Operation zusammen

       ! Ausdruck
              ist wahr, wenn der Ausdruck falsch ist

       -not Ausdruck
              ist ebenfalls wahr, wenn der Ausdruck falsch ist

       Ausdruck1 Ausdruck2
              UND  Verknüpfung;  wenn  Ausdruck1 wahr ist, wird Ausdruck2 bew-
              ertet (ausgeführt)

       Ausdruck1 -a Ausdruck2
              auch eine UND Verknüpfung

       Ausdruck1 -and Ausdruck2
              auch eine UND Verknüpfung

       Ausdruck1 -o Ausdruck2
              ODER Verknüpfung; Ausdruck2  wird  bewertet  (ausgeführt),  wenn
              Ausdruck1 falsch ist

       Ausdruck1 -or Ausdruck2
              auch eine ODER Verknüpfung

       Ausdruck1 , Ausdruck2
              Liste;  beide  Ausdrücke werden immer bewertet (ausgeführt); der
              Wahrheitswert des gesamten Ausdrucks  entspricht  dem  von  Aus-
              druck2

       das   LunetIX   Linuxhandbuch,   locate(1),  locatedb(5),  updatedb(1),
       xargs(1), fnmatch(3), regex(7), stat(2),  lstat(2),  ls(1),  printf(3),
       strftime(3),  ctime(3),  Finding  Files  (on-line im Info-Dokument oder
       gedruckt),

HISTORY
       Seit findutils-4.2.2 stimmen Shell-Metazeichen ('*'. '?' oder '[]'  zum
       Beispiel), die in Muster für Dateinamen verwendet werden, einen führen-
       den '.', denn die Interpretation 126 von IEEE POSIX erfordert dieses.

AUTOREN
       Eric Decker, David MacKenzie, Jay Plett und Tim Wood




LunetIX Linuxhandbuch            1. Juli 1993                          FIND(1)

Man(1) output converted for Linux installieren!