Linux仅查找/搜索根分区?


17

说我需要做:

查找/ -name somefile.txt

并说根分区/已安装在/dev/sda5;但是,让我们说我也有250GB分区(/dev/sda6/dev/sda7)安装在/media-而且我目前还不能记住另一个位置。还要说,我知道我要查找的文件在上/dev/sda5

显然,上面的命令还将出现在/media代表大分区的其他目录中,从而浪费了时间在错误的位置查找文件。

有没有一种方法可以指示find(或其他命令) /在上搜索/dev/sda5,如果目录位于不同的分区上,则不能下降到目录?

Answers:


30

使用-xdev参数查找

-xdev不要降级其他文件系统上的目录。


1
非常感谢-仅供参考,语法为:<pre> find / -xdev -name somefile.txt </ pre>
sdaau 2010年

1
对于Mac用户:查找-x / -name somefile.txt
CodeReaper 2014年

1
在手册页上搜索--one-file-systemla du也对我没有好处。至少他们都以-x我想开始。我认为这意味着“跨设备”。
Sridhar Sarnobat

2

POSIX标准定义-xdev“主要”:

这将导致查找不继续下降到具有不同设备ID的目录

这是在GNU find(即findutils ; docs)中实现的。
GNU find还允许您将-mount用作的替代名称-xdev,以与find的其他某些版本兼容。

在BSD系统和macOS上,该选项-x改为。他们(令人困惑的imho)称其-xdev为“ 已弃用 ”。但是,您可以-mount改用。[ FreeBSDmacOS的手册页]

其他工具,仅供参考

如果您使用ripgreprg)like rg --files,则可以使用该--one-file-system选项,其功能与find-xdev选项相同。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.