Indexação de texto completo compatível com a linha de comandos?

34

Existe algo como um mecanismo de indexação de texto completo, que pode ser consultado a partir da linha de comando e, idealmente, não exigiria a utilização de um gui?

Estou especialmente interessado em indexar meus ebooks e papers, então é uma mistura de pdf, epub e alguns djvu. (Open) docs do Office seria bom, mas muito menor na minha lista.

    
por julien 13.10.2010 / 23:47

7 respostas

11

Você já olhou para Lucene ou Sphinx? Enquanto você precisará inicialmente analisar os documentos que você deseja indexar, uma vez feito isso, qualquer um pode pesquisar a partir do cli.

Para Lucene, há algumas informações sobre como fazer isso disponível .

O Sphinx é um pouco mais vago, mas há também alguma documentação disponível . Você pode passar dados XML estruturados de sua escolha para a sphinx por meio da fonte de dados xmlpipe2.

O Lucene depende do Java, enquanto o Sphinx é construído em C ++ sem necessidade de dependências externas.

Qualquer um vai exigir um pouco de trabalho para fazer o que você quer, mas parece uma solução totalmente viável.

    
por 14.10.2010 / 05:12
4

confira xapian . Tem interface de linha de comando e pode indexar vários formatos.

    
por 07.01.2012 / 11:51
3

O Tracker pode ser invocado a partir da linha de comando e o gtk + não é uma dependência difícil para um projeto (mas pode ser para pacotes).

    
por 14.10.2010 / 01:03
3

Esta resposta recomenda o uso da pesquisa de códigos do Google,

Code Search is a tool for indexing and then performing regular expression searches over large bodies of source code.

Superusers no Debian / derivados podem tentar: sudo apt-get install codesearch

    
por 14.03.2014 / 08:23
2

Atualmente existem dois streams do Tracker, estáveis (0,8) e instáveis (0,9). Provavelmente, seu sistema operacional tem a versão 0.8, portanto, se você puder pagar (ele tem alguma ponta de prova dependências de software), vai pegar o tarfile mais recente (0.9.x). Tem muitas melhorias acima de 0,8, e é atualmente sendo estabilizado a fim de ser 0.10 (números pares representam estabilidade). Se você escolher seguir esse caminho, use este comando para configurar:

./configure --disable-tracker-needle --disable-tracker-preferences --disable-tracker-explorer --disable-tracker-status-icon

Você provavelmente não terá as dependências instaladas, portanto, deve-se simplesmente instalar 0,8 de sua distro e evitar os bits da GUI. No Debian Squeeze, Ubuntu 10.10 e Ubuntu 11.04, estes são bem divididos. Então ( as root ) executar:

apt-get install --no-install-recommends tracker-utils tracker-miner-fs

A ferramenta CLI para isso é tracker-search , então corra com a opção --help para ver como tirar proveito disso: -)

notas :

  • No Fedora 14, o pacote Tracker tem dependências no GTK +. Eu acho que é porque inclui coisas como tracker-applet e tracker-preferences . No entanto, eles têm um pacote separado para tracker-search-tool , a interface de pesquisa da GUI.
  • DjVu e ePUB não são (ainda) suportados. Aqui está uma lista do que é .
por 27.01.2011 / 08:56
2

O Recoll pode ser construído sem interface gráfica e irá procurar os seus tipos de documentos a partir da linha de comando.

    
por 17.05.2013 / 15:14
0

Eu trabalhei em escrever uma ferramenta de pesquisa de texto completo (um novo propósito) para indexar e procurar páginas de manual para o NetBSD neste verão usando o Sqlite3. Consiste em duas ferramentas de linha de comando:

  • makemandb: que analisa e cria um índice do conteúdo das páginas man.
  • apropos: a ferramenta para consultar este índice.

Você poderia facilmente escrever uma ferramenta semelhante para você, para o pdf você precisará de uma biblioteca para analisar documentos em pdf e, da mesma forma, um utilitário para analisar os documentos abertos do escritório.

Você pode ler mais sobre o projeto aqui

O código é aqui

    
por 13.11.2011 / 12:51