Com cercar arxius a text complet en distros Linux lleugeres

Com suposo alguns de vostès. Sabran, el KDE ve amb Nepomuk, que entre altres coses ens permet cercar arxius o programes molt fàcilment. Només cal començar a escriure el nom i ja surten. Una cosa similar passa en Unity o GNOME. Fent alguns ajustos, alguns d'ells fins i tot fins permeten fer cerques dins dels arxius (el que en anglès s'anomena «full text search»). Els que hagin utilitzat Windows 7 alguna vegada també sabran del que parlo: només cal començar a escriure una paraula perquè apareguin els arxius o programes relacionats.

En les distribucions més lleugeres això és una mica més difícil d'aconseguir. Però el mètode que els vaig a ensenyar és MOLT lleuger (d'acord amb distros d'aquest tipus) i efectiu.

Escollir el llançador: dmenu

La meva primera opció va ser provar amb els llançadors que no depenen d'un entorn o una distro en particular. Em refereixo a Synapse (que ara està de moda), Gnome-Do, Kupfer, etc. Tots ells comparteixen una cosa: no poden fer cerques «full text» (o sigui, dins dels arxius). A més, vénen amb un munt d'altres connectors que a mi no em aporten massa. Això sense esmentar que no són prou «minimalistes» i lleugers.

Els que utilitzin Openbox, Enlightenment o similar probablement coneguin dmenu. Els que no ho hagin utilitzat mai, els suggereixo visitar aquest vell post on s'expliquen les característiques principals. En resum, es tracta d'un llançador d'aplicacions ultra-minimalista i súper-lleuger. Però no és només això, el que no sabia és que si es el configura correctament, també pot servir per mostrar elements de qualsevol llista que li passem. Aquest descobriment, obre les portes a moltes possibilitats ...

Per instal·lar dmenu en Arch només cal obrir un terminal i executar:

suo pacman -S dmenu

instal·lar Recoll

El segon descobriment, va ser Recoll. El nostre amic Fico ens va parlar d'ell fa uns mesos, article la lectura recomano.

Recoll és una eina molt lleugera i independent de qualsevol entorn d'escriptori que permet fer cerques a text complet ( «full text»). Òbviament, per això primer ha de indexar els arxius, la qual cosa pot demorar una estona però un cop realitzada la indexació inicial la resta de les actualitzacions no demora molt.

Recoll és una interfície gràfica, fàcil d'usar i amb moltes opcions, dissenyada en QT i basada en el motor de cerca Xapian.

Encara seguiu fent servir locate, find o catfish? ¡Ja! Vaig seguir llegint ...

Per instal·lar Recoll en Arch i derivats:

yaourt -S recoll

Notaran que recoll té com a dependències opcionals un munt de paquets:

  • libxslt: for XML based formats (fb2, etc)
  • unzip: for the OpenOffice.org documents
  • xpdf: for pdf
  • pstotext: for postscipt
  • antiword: for msword
  • catdoc: for ms excel and powerpoint
  • unrtf: for RTF
  • untex: for dvi support with dvips
  • djvulibre: for djvu
  • id3lib: for mp3 tags support with id3info
  • python2: for using some filters
  • mutàgen: Àudio metadata
  • python2-pychm: CHM files
  • perl-image-exiftool: EXIF ​​data from raw files
  • aspell-en: English stemming support

La instal·lació d'aquests paquets permetrà a Recoll indexar el contingut dels tipus de fitxers corresponents. Per exemple, antiword, permet Recoll indexar el contingut dels arxius .DOC, etc.

La selecció de components addicionals a instal·lar depèn de les teves necessitats i de la varietat de tipus d'arxius que es trobin emmagatzemats en el teu ordinador. No obstant això, a no desesperar perquè Recoll, després d'indexar els nostres arxius, ens recomanarà quins components instal·lar per millorar la seva efectivitat.

Com utilitzar Recoll

A l'iniciar Recoll per primera vegada, apareixerà la pantalla que es veu a continuació. En cas que vulguis indexar només el teu HOME (en forma completa), només n'hi ha prou amb que facis clic a Inicia indexació ara.

Pantalla d'inici de Recoll

Pantalla d'inici de Recoll

Recoll compta amb poderoses facilitats de cerca. A més d'ingressar les paraules a cercar també permet cerques booleanes assistides amb clàusules de proximitat, filtrant els tipus d'arxius o ubicació. També permet una recerca compatible amb Xesam, per camp i filtrat per data.

La resposta de el programa a l'hora de realitzar les recerques i presentar resultats també és sorprenent per la seva rapidesa, i interessant per la manera en que presenten aquests resultats, i determinar els documents més rellevants, per als termes de cerca que es proporcionen, i incloent una vista prèvia.

A la imatge a continuació, jo vaig decidir mostrar els resultats en una taula, tot i que Recoll ve per defecte amb un altre estil per mostrar els resultats, molt més complet i descriptiu.

Resultats d'una cerca en Recoll

Resultats d'una cerca en Recoll

Per veure els paquets que faltaven perquè Recoll pugui realitzar una indexació completa dels teus arxius, només cal anar a Arxiu> Mostra ajudants que falten.

Components addicionals que falten

Components addicionals que falten

En Preferències> Horari de Indexació pots configurar la programació de la indexació de fitxers. Òbviament, perquè Recoll funcioni bé necessita indexar tots els teus arxius (o al menys els de la carpeta que t'interessi, usualment el teu HOME). Per a això, hi ha 3 alternatives: indexació a mà (la meva preferida), indexació mitjançant cron o indexació a l'arrencar el sistema.

Programació de la indexació en Recoll

Programació de la indexació en Recoll

Màgia: combinar Recoll i dmenu ... per ventura és possible?

Sí, sí que ho és. El truc està en saber que dmenu no només permet llistar aplicacions sinó qualsevol cosa que li passem. Només cal descobrir com fer cerques a Recoll mitjançant un terminal i passar-li els resultats a dmenu.

La màgia s'aconsegueix, com no podia ser d'altra manera, a través d'un senzill script, L'autoria és de Massimo Lauria i que em vaig atrevir a modificar lleugerament per traduir-lo a l'espanyol.

descarregar script

Guarda l'arxiu (suposem, busq-recoll.sh). Otorgale permisos d'execució (suo chmod + a busq-recoll.sh) I assigna-li una combinació de tecles apropiada. En Openbox, això s'aconsegueix editant l'arxiu ~ / .Config / OPENBOX / rc.xml oa través de la interfície gràfica obkey.

El resultat final: recerques a text complet usant poquíssims recursos. Com diria el Bambino Veira: «Bellesa!».

dmenu a l'ingressar el text de la cerca

dmenu a l'ingressar el text de la cerca

dmenu, mostrant els resultats retornats per recoll

dmenu, mostrant els resultats retornats per recoll

Japa

Els que usin Ubuntu, poden obtenir resultats similars a través de l'Lens de Recoll. Per a això, cal afegir el PPA corresponent i instal·lar els següents paquets:

suo add-apt-repository ppa: recoll-backports / recoll-1.15-on sudo apt-get update sudo apt-get install recoll sudo apt-get install recoll-lens

Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.

  1.   ILAV va dir

    Senzillament genial O_O

  2.   usemoslinux va dir

    Així és ... 🙂 I és MOLT més ràpid i lleuger que el teu estimat KDE ... jaja!

    1.    ILAV va dir

      Pot ser, però no canvio la meva cercador integrat a Dolphin per res. 😉

      1.    usemoslinux va dir

        Ah ... això sí ... Dolphin és una altra cosa ... paraules majors.

  3.   AlonsoSanti14 va dir

    i en gnome com ho configura, perquè faci el que dius el "full text search"?
    espere, em puguis ajudar, ja que, si m'agradaria poder cercar documents d'aquesta forma.

    1.    usemoslinux va dir

      No ús GNOME però si no recordo malament ve amb una eina que es diu Tracker que serveix per fer cerques a text complet.
      Salutacions! Pau.

      1.    AlonsoSanti14 va dir

        ok gràcies, ara mateix busco informació sobre Tracker.

  4.   gonzalezmd (# Bik'it Bolom #) va dir

    És bo conèixer aquestes solucions. Gràcies.

    1.    usemoslinux va dir

      A vós, per fer comentaris. 😉

  5.   maximi89 va dir

    Jo en el meu cas conec una cosa molt simple que està en totes les distros ... és «updatedb» i aleshores utilitzar «locate arxiu», és molt fàcil i molt lleuger ajaaja

    1.    eliotime3000 va dir

      Sí, però de vegades, recórrer el camí llarg té una mica de divertit.

    2.    usemoslinux va dir

      Això no és correcte. Amb locate i updatedb no és possible fer cerques a text complet.
      Salutacions! Pau

  6.   gonza_212 va dir

    Molt bon post, interessant informació ... ho estic provant.
    Ingrés a la pàgina per descarregar l'script que vas deixar a l'últim però em surt error, t'agrairia si pots tornar a pujar-lo.

    Moltes gràcies, salutacions!

    🙂

    1.    usemoslinux va dir

      Funciona bé. Proba altra vegada ...

      1.    gonza_212 va dir

        Moltíssimes gràcies, ara sí ja ho vaig poder descarregar.

        Salutacions!

        🙂

  7.   gonza_212 va dir

    Disculpa, però ho he provat en el meu compu i no em funciona. Tinc ArchLinux amb el gestor PekWM (sense entorn d'escriptori) ... però sembla que l'script no funciona. Algú podria ajudar-me?

    Moltes gràcies, salutacions!

  8.   usemoslinux va dir

    Podries especificar una mica millor què és el que no et funciona ??

    1.    gonza_212 va dir

      La veritat és que no sé si s'estarà executant ... al gestor PekWM existeix un fitxer anomenat «keys» (que es troba en el directori /home/usuario/.pekwm/) on es configuren les hotkeys (o dreceres de teclat), de manera que vaig assignar l'script a la conbinación Ctrl + F, però no sé si estarà bé la sintaxi de la comanda per executar-lo.

      Els mostro com està escrita la línia corresponent a aquesta combinació d'tecles:

      KeyPress = «Ctrl F» {Actions = «Exec` sh Explor-recoll.sh` »}

      nota: l'script busq-recoll.sh es troba en el meu home, és a dir a / home / elmeuusuari /

      Però a l'pressionar Ctrl + F no passa res ... vaig provar modificant la línia perquè executi dmenu en comptes de l'script i hauria de funcionar.

      Una altra de les coses que vaig fer va ser executar aquest script a la terminal, i a el fer-ho em mostra el següent:

      $ Sh busq-recoll.sh
      busq-recoll.sh: línia 39: error sintàctic, no s'esperava el final d'el fitxer

  9.   gonza_212 va dir

    Disculpa les molèsties, ja vaig poder solucionar el problema. El que va passar va ser que vaig descarregar l'script des del paste i d'aquesta forma hi ha un problema en la codificació que utilitza. Per tant el que s'ha de fer és copiar tot el contingut i enganxar-lo en un fitxer buit perquè no generi aquest inconvenient.

    Mil disculpes, moltes gràcies igual.

    Salutacions!