系统: Linux 19.1 Tessa,编辑:肉桂
locate命令有问题。我在桌面上创建了test.txt文件。在那之后我做了:
sudo updatedb然而,
locate test.txt -i 还是什么都没显示出来。
对mlocate.db的权限:在普通用户上工作的-rw-r----,而不是根用户(这就是为什么我使用sudo命令)
发布于 2019-08-06 12:07:02
updatedb命令将扫描系统上的文件系统,并创建可用文件和目录名称的索引。此索引以非特权用户的身份执行。这意味着索引将只包含所有系统用户都可以访问的文件名。
因为您的主目录只能由您自己访问(您在注释中说您对它拥有rwx------权限),这意味着它不会被updatedb索引。这反过来意味着locate将永远不会从您的主目录中返回名称(使用sudo locate而不是仅使用locate仍然会查询相同的索引,因此这不会有帮助)。
要解决这个问题,您有两个选择:
updatedb索引的任何目录)。权限可能应该读取rwxr-xr-x,或八进制的755。locate查找文件。相反,请使用find:find "$HOME“-name test.txt --这将在您的主目录中或在您的目录下查找名为test.txt的内容。https://unix.stackexchange.com/questions/534103
复制相似问题