¿Linux encuentra / busca partición raíz SOLAMENTE?

17

Di que necesito hacer:

find / -name somefile.txt

y decir que la partición raíz /está montada /dev/sda5; sin embargo, digamos que también tengo particiones de 250 GB ( /dev/sda6, /dev/sda7) montadas en /media- Y otra ubicación que no puedo recordar actualmente. Digamos también que sé que el archivo que estoy buscando está activado /dev/sda5.

Obviamente, el comando anterior también descenderá en /mediaese otro directorio que representa las grandes particiones, perdiendo el tiempo buscando el archivo en el lugar equivocado.

¿Hay una manera de encontrar instruir (u otro comando) para buscar solamente / en /dev/sda5, y no descender a los directorios si están en diferentes particiones?

sdaau
fuente

Respuestas:

30

Usa el -xdevargumento para encontrar

-xdev No descienda directorios en otros sistemas de archivos.

nos
fuente
1
Muchas gracias, solo como referencia, la sintaxis sería: <pre> find / -xdev -name somefile.txt </pre>
sdaau
1
Para usuarios de mac: find -x / -name somefile.txt
CodeReaper
1
Buscar en la página de manual a la --one-file-systemla dutampoco me sirvió. Al menos ambos comienzan -x, supongo. Y significa "dispositivos cruzados", creo.
Sridhar Sarnobat 01 de
2

El estándar POSIX define el -xdev"primario":

provocará que find no continúe descendiendo directorios anteriores que tienen una ID de dispositivo diferente

Esto se implementa en GNU's find (es decir, findutils ; docs ).
GNU findtambién le permite utilizar -mountcomo” un nombre alternativo para -xdev, por compatibilidad con otras versiones de hallazgo. "

En los sistemas BSD y macOS, la opción es en su -xlugar. Ellos (imho confusamente) llaman -xdeva ser " desaprobado ". Sin embargo, puede usar -mounten su lugar. [páginas de manual de FreeBSD y macOS ]

otras herramientas, solo para tu información

Si usa ripgrep ( rg) like rg --files, puede usar la --one-file-systemopción, que hace lo mismo que hallazgo 's -xdevopción.

myrdd
fuente