find-Kommando: Frage zu Tests und logischen Operatoren

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von siradlib, 09.11.2012.

  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:
    173
    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. Anfänger Frage: Welchen Standard wählen

    Anfänger Frage: Welchen Standard wählen: Hallo, früher wußte ich nie wie ich anfangen muß. Heute weiß ich einfach anfangen und mir alles selbst beibringen. Was ich mich aber noch...
  2. Sicherheitsfragen zu PHP-Anwendungen auf der Webseite

    Sicherheitsfragen zu PHP-Anwendungen auf der Webseite: Hallo miteinander, habe eine kleine Webseite (4 Jahre statisch, keine Sicherheitsprobleme bisher) und ich frage mich, wie sicher die Verwendung...
  3. Fragen zu find

    Fragen zu find: Hallo an alle, Ich bin ziemlich neu in der Linux Welt und habe paar frage Ich soll alle Datein im system finden die vor weniger als drei Tagen...
  4. Frage zu QNX - habe login nie gefunden

    Frage zu QNX - habe login nie gefunden: ′
  5. Kleine Frage (Solaris ein Cloud Betriebsystem?)

    Kleine Frage (Solaris ein Cloud Betriebsystem?): ′