it-swarm-es.tech

¿Indexación de texto completo compatible con la línea de comandos?

¿Existe un motor de indexación de texto completo, que se pueda consultar desde la línea de comandos e idealmente no requeriría el uso de una interfaz gráfica de usuario?

Estoy especialmente interesado en indexar mis libros electrónicos y artículos, por lo que es una mezcla de pdf, epub y algunos djvu. (Abierto) Los documentos de Office serían agradables, pero mucho más bajos en mi lista.

38
julien

¿Has mirado a Lucene o Sphinx? Si bien necesitará analizar inicialmente los documentos que desea indexar, una vez hecho esto, cualquiera de los dos puede buscar desde cli.

Para Lucene, hay información sobre cómo hacer esto disponible .

Sphinx, es un poco más vago, pero también hay algo de documentación disponible . Puede pasar datos XML estructurados de su elección a sphinx a través de la fuente de datos xmlpipe2.

Lucene se basa en Java, mientras que Sphinx está construido en C++ sin dependencias externas necesarias.

Cualquiera de los dos requerirá un poco de trabajo para hacer lo que quiere, pero parece una solución totalmente viable.

11
gabe.

echa un vistazo a xapian . Tiene una interfaz de línea de comandos y puede indexar muchos formatos.

5
Michał Šrajer

Esta respuesta recomienda usar búsqueda de código de Google,

Code Search es una herramienta para indexar y luego realizar búsquedas de expresiones regulares en grandes cuerpos de código fuente.

Los superusuarios de Debian/derivados pueden probar: Sudo apt-get install codesearch

4
joeytwiddle

Recoll se puede construir sin GUI y buscará sus tipos de documentos desde la línea de comando.

Utiliza Xapian debajo del capó.

4
user2391635

El rastreador se puede invocar desde la línea de comandos y gtk + no es una dependencia estricta para un proyecto (pero puede serlo para paquetes).

3
Maciej Piechotka

Actualmente hay dos flujos de Tracker, estable (0.8) e inestable (0.9). Es probable que su sistema operativo tenga la versión 0.8, así que si puede permitírselo (tiene algunas borde sangrante dependencias de software), busque el último archivo tar (0.9.x). Tiene muchas mejoras más de 0.8, y actualmente se está estabilizando más para ser 0.10 (los números pares representan estabilidad). Si elige seguir esta ruta, use este comando para configurar:

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

Es probable que no tenga instaladas las dependencias, por lo que debería ser más sencillo instalar 0.8 desde su distribución y evitar los bits de la GUI. En Debian Squeeze, Ubuntu 10.10 y Ubuntu 11.04, estos están muy bien divididos. Entonces ( como root ) ejecuta:

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

La herramienta CLI para esto es tracker-search, así que ejecútelo con --help opción para ver cómo aprovecharlo :-)

notas :

  • En Fedora 14, el paquete Tracker tiene dependencias en GTK +. Supongo que es porque incluye cosas como tracker-applet y tracker-preferences. Sin embargo, tienen un paquete separado para tracker-search-tool, la interfaz de búsqueda GUI.
  • DjVu y ePUB no son (todavía) compatibles. Aquí está na lista de lo que es .
2
tshepang

Trabajé en la escritura de una herramienta de búsqueda de texto completo (un nuevo propósito) para indexar y buscar páginas de manual para NetBSD este verano usando Sqlite3. Consta de dos herramientas de línea de comandos:

  • makemandb: que analiza y crea un índice del contenido de las páginas de manual.
  • apropos: La herramienta para consultar este índice.

Puede escribir fácilmente una herramienta similar para usted mismo, para los archivos PDF necesitará una biblioteca para analizar documentos PDF y, de manera similar, una utilidad para analizar los documentos de Open Office.

Puedes leer más sobre el proyecto aquí

El código es aquí

0
Abhinav Upadhyay