Linux trova / cerca SOLO la partizione di root?


17

Di 'che devo fare:

trova / -name somefile.txt

e dire che la partizione di root /è montata /dev/sda5; tuttavia, supponiamo di avere anche partizioni da 250 GB ( /dev/sda6, /dev/sda7) montate in /media- E un'altra posizione che al momento non ricordo. Di 'anche che so che il file che sto cercando è su /dev/sda5.

Ovviamente, scenderà anche il comando sopra /mediae quell'altra directory che rappresenta le grandi partizioni, perdendo tempo a cercare il file nel posto sbagliato.

C'è un modo per istruire find (o altri comandi) a cercare solo / su /dev/sda5, e NON a scendere alle directory se si trovano su partizioni diverse?

Risposte:


30

Usa l' -xdevargomento per trovare

-xdev Non discende le directory su altri filesystem.


1
Grazie mille - solo per riferimento, la sintassi sarebbe: <pre> find / -xdev -name somefile.txt </pre>
sdaau,

1
Per utenti mac: trova -x / -name somefile.txt
CodeReaper

1
Anche la ricerca nella manpage di --one-file-systemun la dunon mi è andata bene. Almeno entrambi iniziano con -xsuppongo. E significa "dispositivi incrociati" penso.
Sridhar Sarnobat,

2

Lo standard POSIX definisce il -xdev"primario":

farà sì che non continui a scendere le directory passate che hanno un ID dispositivo diverso

Questo è implementato in GNU find(cioè i findutils ; docs ).
GNU findti permette anche di usare -mountcome " un nome alternativo per -xdev, per compatibilità con alcune altre versioni di find.

Sui sistemi BSD e macOS l'opzione è -xinvece. (Imho confusamente) chiamano -xdev" deprecati ". È possibile, tuttavia, utilizzare -mountinvece. [manpage di FreeBSD e macOS ]

altri strumenti, solo FYI

Se stai usando ripgrep ( rg) come rg --files, è possibile utilizzare l' --one-file-systemopzione, che fa la stessa cosa come find s' -xdevopzione.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.