主机论坛_虚拟主机_美国主机_美国虚拟主机_云主机技术_全球主机交流聚集地—Web Hosting Talk 中文站

找回密码
立即注册
发新帖

0

收听

8

听众

557

主题
发表于 2019-5-28 11:25:14 | 查看: 617| 回复: 0
本帖最后由 完善 于 2019-5-28 11:44 编辑

在计算机上处理文件的一个问题是跟踪它们的位置。这很容易忘记文件存储在哪个目录中,然后浪费时间寻找它。虽然图形用户界面通常会提供查找文件的简单方法,但是当茫然地盯着命令行中闪烁的光标时,事情就不那么简单了。
文件搜索
搜索文件的最基本方法是使用ls命令,例如:
ls file.txt
不幸的是,如果文件在当前工作目录中,则只能找到file.txt文件。虽然可以使用ls和-R标志来递归地列出文件,但这可能提供了太多信息。即使使用grep缩小确切的文件名,无需通过sed或awk管道输出以重新格式化,用户仍然不知道文件在哪里。虽然这些方法是有效的,但是它们的复杂性暗示了可能有一种更直接的方法来完成这个简单的任务。确实如此。
Locate命令
介绍locate命令。这个命令出现在大多数Linux发行版的默认存储库中,并且在许多版本中是默认安装的。它由两个命令组成:locate命令本身允许搜索文件,updatedb命令用于扫描文件系统并填充locate用于查找文件的数据库。大多数发行版都配置为在夜间自动运行updatedb命令,因此请注意,除非再次手动运行updatedb,否则locate不会收集白天对文件系统所做的更改。
locate命令可用于搜索完整的文件名、部分文件名,或者尝试将正则表达式与文件名进行匹配。以下是一个例子:
locate file.txt
这将在文件系统上搜索名为file.txt的文件,并列出找到的每个匹配文件的完整路径。搜索部分匹配项时,只需提供部分文件名,例如:
locate ile
上面的命令将搜索文件名中包含“ile”的任何文件,因此这将与我们以前的文件file.txt以及文件名中任何地方都有“ile”的文件相匹配。如果只能记住部分文件名,这可能会很有帮助。
给locate提供与多个搜索条件也是可以的,而locate将为提供的每个术语返回匹配项。只需用空格隔开即可,如下所示:
locate ile ole
上面的命令搜索名称中包含“ile”或“ole”的文件。
使用locate进行的搜索区分大小写,因此如果不记得文件名中的字母是大写还是小写,则需要使用-i标志。
locate -i ilE
如果熟悉正则表达式以及如何使用它们,那么可以使用-r标志让locate将提供的搜索词视为正则表达式:
locate -r “ile”
需要注意的是,locate只会找到调用该命令的用户可以访问的文件。因此,如果正在搜索其他用户拥有的系统文件或文件,可以使用sudo命令让locate作为根用户运行。
这总结了一些使用locate查找文件的基本方法。在本文中,用户需要知道文件名或部分文件名才能找到要查找的文件。第二部分将介绍find命令,研究一些更高级的文件搜索方法。

该会员没有填写今日想说内容.

收藏回复 显示全部楼层 道具 举报

您需要登录后才可以回帖 登录 | 立即注册

Archiver|手机版|小黑屋|WebHostingTalk中文站

GMT+8, 2024-4-24 20:52 , Processed in 0.065825 second(s), 23 queries .

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

快速回复 返回顶部 返回列表