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. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #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? :)
     
  4. #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.
     
  5. #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
     
  6. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
Thema:

find-Kommando: Frage zu Tests und logischen Operatoren

Die Seite wird geladen...

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

  1. 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...
  2. 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...
  3. 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...
  4. 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...
  5. General Public License (GPL) - Frage

    General Public License (GPL) - Frage: Hallo, ich habe eine Frage zu der GNU General Public License (GPL). Und zwar möchte ich wissen, wann ich genau meine Code-Änderungen, die ich bei...