find-Kommando: Frage zu Tests und logischen Operatoren

Diskutiere find-Kommando: Frage zu Tests und logischen Operatoren im Shell-Skripte Forum im Bereich Programmieren unter Linux/Unix; Hallo zusammen, folgende Aufgabenstellung: Ich suche Dateien, die entweder zur group "mygroup" oder dem User "myuser" gehören. Die Dateinamen...

  1. #1 siradlib, 09.11.2012
    siradlib

    siradlib Grünschnabel

    Dabei seit:
    09.11.2012
    Beiträge:
    4
    Zustimmungen:
    0
    Hallo zusammen,

    folgende Aufgabenstellung: Ich suche Dateien, die entweder zur group "mygroup" oder dem User "myuser" gehören. Die Dateinamen sollen ausgegeben werden. Verwendet wird Red Hat Linux mit der bash.

    • so funktionierts:
      Code:
      find / \( -group mygroup -o -user myuser \) -ls 
    • so nicht:
      Code:
      find / -group mygroup -o -user myuser -ls 

    Frage: Warum funktioniert es ohne die Klammern, die meines Wissens nach nur die Präzendenz (Wertigkeit) der Tests verändern können, nicht?

    Dankeschön!

    LG siradlib
     
  2. #2 Spröde, 10.11.2012
    Spröde

    Spröde Alter Sack

    Dabei seit:
    22.01.2012
    Beiträge:
    175
    Zustimmungen:
    0
    Wie sollte find sonst "wissen", welche Optionen da mit ODER verknüpft werden sollen? Soll es raten? :)
     
  3. #3 tgruene, 10.11.2012
    tgruene

    tgruene Routinier

    Dabei seit:
    02.02.2012
    Beiträge:
    418
    Zustimmungen:
    0
    Nein, das ist nicht der Grund - find muesste nicht raten, da die Auswertung von logischen Ausdruecken - nunja - logisch ist. Der eigentliche Grund findet sich in der Reihenfolge, in der Operatoren angewandt werden:
    Diese Regel kommt vor '-or', so dass der Ausdruck ohne Klammern fuer find bedeutet
    Code:
    find / -group mygroup -o \(-user myuser -ls\) 
    Ich weiss nicht, zu was '-user myuser -ls' evaluiert, aber wahrscheinlich ist es immer falsch oder immer richtig.
     
  4. #4 siradlib, 10.11.2012
    siradlib

    siradlib Grünschnabel

    Dabei seit:
    09.11.2012
    Beiträge:
    4
    Zustimmungen:
    0
    tgruene, das klingt logisch- Danke!

    '-ls' müßte immer richtig/wahr sein, da Kommando
    '-user myuser' ist dann richtig/wahr, wenn eine Datei/ein Verzeichnis dem User myuser gehört
     
Thema:

find-Kommando: Frage zu Tests und logischen Operatoren

Die Seite wird geladen...

find-Kommando: Frage zu Tests und logischen Operatoren - Ähnliche Themen

  1. Telefoninterview (Wie sich auf Bash-Shell-Fragen vorbereiten?)

    Telefoninterview (Wie sich auf Bash-Shell-Fragen vorbereiten?): Hallo Leute :) Ich habe heute eine E-Mail bekommen und zwar für ein Telefoninterview am übermorgen und ich bin da recht nervös, vor allem am...
  2. 2 Gateways - ein Netz. Verständnisfrage

    2 Gateways - ein Netz. Verständnisfrage: Hallo Gemeinschaft, ich habe 2 Gateways zu einem Netz. Mit dem ersten kommen VPN Verbindungen Net2Net mittels FritzBox herein. Ich meine es ist...
  3. Fragen zu stty, quotes und Datein (flush)

    Fragen zu stty, quotes und Datein (flush): Hi, ich schreibe seit ein paar Tagen ein Skript, dass über die Serielle Schnittstelle kommuniziert. Leider gibt es noch zwei Probleme, die ich...
  4. Verständnisfrage zu RegExps

    Verständnisfrage zu RegExps: Hallo Leute, ich bastle gerade an einem Shell-Script und brauche dabei ein paar RegExps. Bisher hatte ich mich mit RegExps wenig auseinander...
  5. grub2 Frage

    grub2 Frage: Hallo Es gibt ja die Möglichkeit, bei grub2 bestimmte Menüeinträge automatsich starten zu lassen (/etc/default/grub). Wie kann ich aber unter...