FIND-Operanden und Reihenfolge der Argumente

FIND-Operanden und Reihenfolge der Argumente

Ich habe einen Suchbefehl, bei dem ich nicht sicher bin, ob ich meine Argumente richtig platziere.

find / -xdev -size -size -262144000c -o -type d \( -name .snapshot -o -name man -o -name Man -o -fstype mvfs \) -prune -o -type f

Ich möchte nur Dateien unter 250 MB finden, die sich nicht in .snapshot, Man-Verzeichnissen oder auf MVFS-Dateisystemen befinden.

Muss ich meinen Größenbefehl in Klammern setzen? Muss ich a -a statt a -o verwenden?

Danke!

Antwort1

Kopiere meinen Kommentar zur Frage in eine Antwort...

find / -type d \( -name .snapshot -o -name man -o -name Man -o -fstype mvfs \) -prune -o -xdev -size -262144000c -type f -print

-awird zwischen Ausdrücken impliziert, wenn -onicht angegeben ist.

(Ich habe nicht genügend Ansehen, um Kommentare zu erstellen/bearbeiten, mein Kommentar wanderte mit der Frage vonstackoverflow.com. Aber vielleicht kann @Scott antworten und von seinem Beitrag profitieren, ich habe etwas gelernt. Du solltest ihm auf die gleiche Weise eine Nachricht schicken. Danke.)

Antwort2

Antwort von crwist gut. KopierenMeinKommentar in eine ergänzende Antwort:

  • -xdevIch schlage vor, das am Anfang (nach dem ) beizubehalten /.
  • Wenn ja -xdev, dann glaube ich, dass Sie es nicht brauchen -fstype.
  • Sie können auch  -name man -o -name Man  zu  ändern -name "[Mm]an".

verwandte Informationen