如何在cygwin中使用定位?


14

我试图用来locate查找文件,但是我没有从程序中得到任何东西。它甚至找不到当前目录中的文件。我该如何locate工作?


使用sudo Updatedb吗?
2009年

Answers:


15

本质上,您必须先运行updatedb,因为这将建立定位使用的数据库。
只需将updatedb --localpaths = c:/作为第一个解决方案即可。

请参阅此博客文章,以获得很多好的提示,包括如何通过cygwin cron设置updateb:https : //web.archive.org/web/20061114000822/www.weiqigao.com/blog/2006/08/14/ten_steps_to_higher_cygwin_productivity .html (更新的链接至archive.org)

如果您对包含空格的路径有疑问,请使用Google'cygwin Updatedb'撰写相关文章。我在WinXP Pro上没有遇到任何麻烦(除了权限被拒绝),但是其他平台可能会要求这样做。


5
博客帖子有一个新的地址,webpages.charter.net/weiqigao/2006/08/14/...
斯特凡Rasmusson

我发现对Cygwin进行简单的updateb调用是无效的,因为默认选项(或--localpaths = c:/)会使它进入无限循环的以下链接。我认为这是因为某些类型的Windows 7链接未显示为与Cygwin的符号链接,因此它无法跳过它们(因为默认的-follow行为是违反直觉的,应该这样做)
Phil Goetz

该博客文章无法访问。最好在此处插入其建议。
reinierpost

1
感谢@reinierpost,修复了链接。帖子太长,无法内联,恕我直言。
dirkjot


-1

我想你想要的命令是 find

不要man find看语法和选项

locate命令针对预先建立的文件名数据库运行


是的,找到针对预建数据库的运行。为什么这意味着OP希望找到它呢?
Carf 2009年

1
如果不存在定位或无论出于何种原因,查找将至少执行请求的工作。速度较慢,因为它没有要搜索的预先准备的数据,但是可以工作,并且结果更可能正确更新和完整(updatedb可能已配置为排除文件系统的某些部分)。
David Spillett
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.