NUR Linux-Root-Partition suchen / suchen?

17

Angenommen, ich muss Folgendes tun:

find / -name somefile.txt

und sagen Root-Partition /ist gemountet /dev/sda5; Nehmen wir jedoch an, ich habe 250-GB-Partitionen ( /dev/sda6, /dev/sda7) eingebunden /media- UND einen anderen Speicherort, an den ich mich derzeit nicht erinnern kann. Sagen Sie auch, dass ich weiß, dass die gesuchte Datei aktiviert ist /dev/sda5.

Offensichtlich wird der obige Befehl auch in /mediaund jenes andere Verzeichnis absteigen , das die großen Partitionen darstellt, wodurch Zeit für die Suche nach der Datei am falschen Ort verschwendet wird.

Gibt es eine Möglichkeit zu instruieren Fund (oder einem anderen Befehl) zu suchen , nur / auf /dev/sda5und nicht abzusteigen auf Verzeichnisse , wenn sie auf verschiedenen Partitionen sind?

sdaau
quelle

Antworten:

30

Verwenden Sie das -xdevArgument, um zu finden

-xdev Führt keine Verzeichnisse auf anderen Dateisystemen herab.

nos
quelle
1
Vielen Dank - nur als Referenz wäre die Syntax: <pre> find / -xdev -name somefile.txt </ pre>
sdaau
1
Für Mac-Benutzer: find -x / -name somefile.txt
CodeReaper
1
Das Durchsuchen der Manpage nach --one-file-systema la duhat mir auch nicht gut getan. Zumindest fangen sie beide wohl damit -xan. Und es bedeutet "Cross-Geräte", denke ich.
Sridhar Sarnobat
2

Der POSIX-Standard definiert den -xdev„primären“:

Es wird dazu führen, dass find nicht weiter in früheren Verzeichnissen mit einer anderen Geräte-ID absteigt

Dies ist in GNUs find(dh den findutils ; docs ) implementiert .
GNU findermöglicht auch Sie zu verwenden -mountals“ einen alternativen Namen für -xdev, um die Kompatibilität mit einigen anderen Versionen finden.

Auf BSD-Systemen und MacOS ist die Option -xstattdessen. Sie rufen (imho verwirrend) dazu -xdevauf, " veraltet " zu sein. Sie können jedoch -mountstattdessen verwenden. [Hilfeseiten von FreeBSD und macOS ]

andere Tools, nur zu Ihrer Information

Wenn Sie mit ripgrep ( rg) wie rg --fileskönnen Sie die verwenden --one-file-systemOption, die die gleiche wie tut find ‚s - -xdevOption.

myrdd
quelle