Как использовать locate в cygwin?

7673
Phenom

Я пытаюсь использовать, locateчтобы найти файлы, но я ничего не получаю от программы. Он даже не может найти файлы, которые находятся в текущем каталоге. Как мне заставить locateработать?

14
использовать sudo updatedb? ukanth 14 лет назад 0

3 ответа на вопрос

15
dirkjot

По сути, вы должны сначала запустить updatedb, так как это создает базу данных, которую использует локация.
Просто сделайте updatedb --localpaths = c: / первым решением.

См. Этот пост в блоге для получения полезных советов, в том числе о том, как настроить updatedb через Cygwin Cron: http://www.weiqigao.com/blog/2006/08/14/ten_steps_to_higher_cygwin_productivity.html.

Google 'cygwin updatedb' для соответствующего сообщения, если у вас есть проблемы с путями, которые включают пробелы. У меня нет никаких проблем (кроме отказа в разрешении) на WinXP Pro, но другие платформы могут требовать этого.

У поста блога новый адрес: http://webpages.charter.net/weiqigao/2006/08/14/ten_steps_to_higher_cygwin_productivity.html Stefan Rasmusson 11 лет назад 5
Я обнаружил, что простой вызов updatedb не будет работать в Cygwin, так как параметры по умолчанию (или --localpaths = c: /) приведут его к следующим ссылкам в бесконечные циклы. Я думаю, это связано с тем, что некоторые типы ссылок Windows 7 не отображаются в виде символических ссылок на Cygwin, поэтому он не может их пропустить (поскольку поведение по умолчанию -follow, как представляется, нелогично, предполагается) Phil Goetz 7 лет назад 0
5
Mark Byers

Для использования locateвам нужно запустить в updatedbпервую очередь.

0
Ex Umbris

Я думаю, что команда, которую вы хотите, это find

Сделать, man findчтобы увидеть синтаксис и параметры

Команда locate запускается для предварительно созданной базы данных имен файлов

Да, locate работает с предварительно созданной базой данных. Почему это означает, что ОП хочет найти вместо этого? CarlF 14 лет назад 0
Find, по крайней мере, выполнит запрошенную работу, если locate отсутствует или по какой-либо причине не работает. Медленнее, поскольку у него не будет предварительно подготовленных данных для поиска, но он будет работать, и результаты, скорее всего, будут должным образом обновлены и завершены (updatedb, возможно, был настроен для исключения некоторых частей файловой системы). David Spillett 14 лет назад 1

Похожие вопросы