首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >定位不管用

问定位不管用
EN

Unix & Linux用户
提问于 2019-08-06 09:52:30
回答 1查看 2.3K关注 0票数 1

系统: Linux 19.1 Tessa,编辑:肉桂

locate命令有问题。我在桌面上创建了test.txt文件。在那之后我做了:

代码语言:javascript
复制
sudo updatedb

然而,

代码语言:javascript
复制
locate test.txt -i 

还是什么都没显示出来。

对mlocate.db的权限:在普通用户上工作的-rw-r----,而不是根用户(这就是为什么我使用sudo命令)

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2019-08-06 12:07:02

updatedb命令将扫描系统上的文件系统,并创建可用文件和目录名称的索引。此索引以非特权用户的身份执行。这意味着索引将只包含所有系统用户都可以访问的文件名。

因为您的主目录只能由您自己访问(您在注释中说您对它拥有rwx------权限),这意味着它不会被updatedb索引。这反过来意味着locate将永远不会从您的主目录中返回名称(使用sudo locate而不是仅使用locate仍然会查询相同的索引,因此这不会有帮助)。

要解决这个问题,您有两个选择:

  1. 放松对主目录的限制(以及您希望由updatedb索引的任何目录)。权限可能应该读取rwxr-xr-x,或八进制的755。
  2. 不要使用locate查找文件。相反,请使用find:find "$HOME“-name test.txt --这将在您的主目录中或在您的目录下查找名为test.txt的内容。
票数 3
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/534103

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档