如何在整个硬盘驱动器中搜索文件?


Answers:


157

find / -type f -name ""如果您知道确切的文件名,那么一个简单的方法就可以解决问题。

find / -type f -iname "filename*" 如果要匹配更多文件(忽略大小写)。

-type如果要搜索目录等,请避免使用option。有关更多信息,请参见查找手册。要查看手册,请发出命令:

man find


Dang,我的速度慢了几秒钟:P将对其进行编辑以仅显示locate命令。
Nitin Venkatesh

2
这也将搜索所有已安装的设备,可能只想搜索/mount/hddyouwanttosearch
Callum Rogers

值得一提的是,与诸如定位(但功能更强大)之类的索引搜索系统相比,查找速度真的很慢
风滚草

48

您还可以locate用来查找命令。人们为什么要使用定位,如果发现没有工作?因为locate只是通过索引位置的数据库进行搜索以找到文件/正则表达式,所以它比find快得多。

例子:

locate some-file.avi 在磁盘上几乎每个文件的数据库中搜索一个名为“ some-file.avi”的文件。

locate -i "some-file.avi" 将忽略您要搜索的文件的大小写。

locate -i "*.txt" 将显示系统上所有扩展名为**。txt *的文件的位置列表。

man locate 有关文件的更多信息。

您可能需要先运行updatedb以确保索引数据库是最新的,否则,“ locate”可能不会返回您要查找的内容。


请注意,updatedb必须以root用户身份运行。
拉斐尔·西拉克(RafałCieślak)2011年

5
这比找到\圣牛快得多...谢谢!
anon58192932 2014年

如果默认updatedb添加/到索引,它怎么会比快find /呢?
Hashim

14

首先单击启动器中的“主文件夹”图标。

在此处输入图片说明

在打开的窗口中,单击“搜索”。

在此处输入图片说明

在框中输入要搜索的内容,然后按Enter。 在此处输入图片说明

在位置下拉菜单下,选择您的硬盘驱动器,然后单击重新加载。

在此处输入图片说明

然后将显示结果。希望有帮助!


3
询问它的人说他使用服务器,因此没有GUI。但这还是一个很好的答案!
拉斐尔·西耶拉克2011年

8

如果要在文件中查找字符串,则可以使用grep。这是一个示例命令:

grep -r -i "some string" /home/yourusername

这将"some string"/home/yourusername目录中找到。搜索将忽略大小写(-i)和递归目录(-r)。您可以将其/用作目录以在整个目录中进行搜索,但这可能不是很有效。


5

在Ubuntu上,我知道每个人都想一直对使用命令行保持教条,过去我一直是这样,但是我喜欢Gnome的“搜索文件...”工具。我认为它很棒。


3
好吧,我在服务器上
Blankman

您应该尝试然后进行KDE搜索。它远比gnome更好。我仍在等待Nautilus赶上KDE搜索系统所具有的多功能性。因此,海豚/ Konqueror要好得多。
路易斯·阿尔瓦拉多

是的,我实际上是在考虑改用Kubuntu。我来看一下。
djangofan 2011年

3

对于桌面设置,请安装“ gnome-search-tool”
sudo apt-get install gnome-search-tool

不要将此安装在服务器中,它还会安装ubuntu桌面软件包。
感谢@Rinzwind指出这一点。

过滤条件包括:

  1. 选择您要搜索的文件夹。在这种情况下\
  2. 包含文本-这是文件名。
  3. 修改日期-少于或大于天数。
  4. 文件大小-至少或最大指定大小。您也可以搜索空文件。
  5. 文件所有者-用户,组或无法识别的所有者。
  6. 正则表达式-匹配正则表达式。
  7. 您可以选择显示隐藏文件,跟随符号链接或排除其他文件系统。

在此处输入图片说明


@Rinzwind问题是Trying to locate a file, how can I search the entire hard drive for a file?任何地方都没有“服务器安装” ...
Parto 2014年

@Rinzwind哈哈。好东西。让我编辑我的答案,说这仅适用于桌面设置。
Parto

有回报:)
Rinzwind 2014年

2

如果您不想记住find(功能非常强大)参数,则可以从官方仓库中安装:

  • kfind-文件搜索实用程序
  • gnome-search- tool-用于搜索文件的GNOME工具
  • fish鱼 -可通过命令行配置的文件搜索工具

他们三个人很棒,但我发现kfind最好。

Ubuntu社区帮助Wiki中,您可能会发现有用的信息:

  • dpkg -L | --listfiles ...列出软件包“拥有”的文件。
  • dpkg -S |-搜索...查找拥有文件的软件包。

1

如果需要查找嵌套在某些目录中的内容:

find / -type f -wholename "*foo/bar/filename"
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.