Fazer Localizador.Updatedb Run Diariamente no Snow Leopard sem Hacking / System / Library? -- launchd campo com command-line camp apple Relacionado O problema

Make locator.updatedb run daily on Snow Leopard w/o hacking /System/Library?


4
vote

problema

português

No banco de dados ABCDEFGHIJKLMNABCDEFGHIJKLMBCDefGHIJKLMN1 é atualizado uma vez por semana por um trabalho de lançamento, /System/Library/LaunchDaemons/com.apple.locate.plist . Eu gostaria de fazer a atualização correr diariamente, mas Afaik é considerado um formulário muito ruim para editar qualquer coisa em /System .

Qual é a melhor maneira de alterar o seu StartCalendarInterval por isso é executado uma vez por dia?

english

On Snow Leopard, the locate database is updated once a week by a launchd job, /System/Library/LaunchDaemons/com.apple.locate.plist. I'd like to make the updater run daily, but AFAIK it's considered very bad form to edit anything in /System.

What's the best way to change its StartCalendarInterval so it runs once a day?

     

Lista de respostas

6
 
vote
vote
Melhor resposta
 

A maneira como eu entendo, essa pasta do sistema Launchd Job não faz nada além de executar /usr/libexec/locate.updatedb em si.

Então, simplesmente Crie seu próprio trabalho de lançado Executando ABCDEFGHIJKLMNABCDEFGHIJKLMN5 < / código> que funciona uma vez por dia.

como sidenote, Aqui está uma resposta super do usuário que recomenda o uso mdfind -name <filename> em vez de locate para que você possa usar o banco de dados do Spotlight, que é continuamente atualizado.

e este Pergunte a uma resposta diferente Tem mais informações sobre a criação de trabalhos de lançamento, se precisar de mais ajuda com isso.

 

The way I understand it, that System folder launchd job does nothing but execute /usr/libexec/locate.updatedb itself.

So simply create your own launchd job executing /usr/libexec/locate.updatedb that runs once a day.

As a sidenote, here's a Super User answer which recommends using mdfind -name <filename> instead of locate so that you can use the Spotlight database which is continually updated.

And this Ask Different answer has more info on creating launchd jobs if you need more help with that.

 
 
   
   
0
 
vote

O problema com 'localizar' e com o spotlight é que ele não pesquisa todos os arquivos. Costumava ser possível trabalhar - em torno disso atualizando o atualizado como root, o que iria avisá-lo que foi um buraco de segurança em potencial (ou seja, qualquer pessoa com acesso de leitura ao banco de dados pode obter uma lista de cada arquivo na casa de $), mas Como a maioria dos usuários do Mac é o único usuário em seus computadores, que não foi uma enorme preocupação.

Eu finalmente fiquei tão farto que escrevi meu próprio script que irá:

  • Faça um índice de texto simples de todos os arquivos, link e diretório
  • Pesquisar esse índice usando egrep
  • Ofereça para restringir as pesquisas a $ HOME ou ao diretório atual, se determinados argumentos são fornecidos
  • se nada for encontrado no índice, oferecer para atualizar o índice ou pesquisa com mdfind

Você pode Download do script aqui [link do Dropbox] . Deve ser bastante fácil entender como funciona apenas lendo através dele.

 

The problem with 'locate' and with Spotlight is that it doesn't search every file. It used to be possible to work-around this by updating the updatedb as root, which would warn you that was a potential security hole (i.e. anyone with read access to the database could get a list of every file in any user's $HOME) but since most Mac users are the only user on their computers, that was not a huge concern.

I finally got so fed up that I wrote my own script which will:

  • make a plain-text index of every file, link, and directory
  • search that index using egrep
  • offer to restrict searches to $HOME or the current directory if certain arguments are given
  • if nothing is found in the index, offer to update the index, or search with mdfind

You can download the script here [Dropbox link]. It should be fairly easy to understand how it works just by reading through it.

 
 

Perguntas relacionadas

0  Como esse script AWK funciona?  ( How does this awk script work ) 
Eu tenho 2 arquivos de dados contendo uma coluna. Eu quero fazer outro arquivo de dados mesclando as duas colunas. Eu tenho a linha de comando na concha, mas ...

1  Como executar o script do shell no lançamento do aplicativo?  ( How to run shell script upon application launch ) 
Não tenho certeza se isso pertence aqui ou no superusuário, mas é o Mac específico, então eu vou com aqui. Eu escrevi um script Ruby que edita o arquivo de ...

1  Como corrigir localize.updatedb não respeitando o diretório excluído de /etc/locate.rc?  ( How to fix locate updatedb not respecting directory excluded from etc locate rc ) 
Eu queria excluir alguns diretórios a partir dos resultados de ABCDEFGHIJKLMNABCDEFGHIJKLMN0 Ao editar ABCDEFGHIJKLMNABCDEFGHIJKLMN1 . Infelizmente se eu e...

6  Os comandos de linha de comando podem ser insensíveis à ordem de nomes e opções de arquivos?  ( Can command line commands be made insensitive to order of filenames and options ) 
Eu sou novo para o uso do MAC. Parece que a maioria dos comandos tropega as opções dadas após os nomes dos arquivos. No Linux, que eu usei há anos, não import...

1  Problema com sintaxe de exclusão de conta script  ( Problem with scripted account deletion syntax ) 
Estou trabalhando em um módulo de script de limpeza de contas que pode lidar com as contas ocultos e unilindas que estamos criando em massa em novos sistemas ...

1  Sintaxe de comando do terminal enrolado do AppleScript  ( Curl terminal command syntax from applescript ) 
Eu quero executar um comando curl no AppleScript que faz o seguinte ( por esta pergunta / resposta ): https://superuser.com/a/1054803/471181. . ... faze...

4  Fazer Localizador.Updatedb Run Diariamente no Snow Leopard sem Hacking / System / Library?  ( Make locator updatedb run daily on snow leopard w o hacking system library ) 
No banco de dados ABCDEFGHIJKLMNABCDEFGHIJKLMBCDefGHIJKLMN1 é atualizado uma vez por semana por um trabalho de lançamento, /System/Library/LaunchDaemons/co...

18  Como atualizar o aplicativo App Store a partir da linha de comando?  ( How to update app store application from command line ) 
Eu gostaria de forçar uma atualização de aplicativos de aplicativos da linha de comando. Como posso fazer isso? ...

26  Como posso inspecionar as variáveis ​​de ambiente de um processo de execução?  ( How can i inspect the environment variables of a running process ) 
Existe algum equivalente (CLI ou GUI) para o recurso ABCDefGHIJKLMNABCDefGHIJKLMN0 ...

4  Obtenha o tempo de CPU do usuário e do sistema de processo no OSX via linha de comando?  ( Get per process user and system cpu time on osx via command line ) 
Estou familiarizado com ABCDEFGHIJKLMNABCDEFGHIJKLMN0 Comando que fornece Usuário e System CPU separados por processo no Linux: $ sudo pidstat -p 3162 Li...




© 2022 pergunte.org All Rights Reserved. Casa de perguntas e respostas todos os direitos reservados


Licensed under cc by-sa 3.0 with attribution required.