Zoeken naar volledige tekstbestanden op lichtgewicht Linux-distributies

Zoals ik veronderstel dat sommigen van jullie weten, wordt KDE geleverd met Nepomuk, waardoor we onder andere heel gemakkelijk naar bestanden of programma's kunnen zoeken. Begin gewoon met het typen van de naam en ze zijn weg. Iets soortgelijks gebeurt in Unity of GNOME. Door enkele aanpassingen aan te brengen, kunt u met sommige zelfs in de bestanden zoeken (wat in het Engels "full text search" wordt genoemd). Degenen die ooit Windows 7 hebben gebruikt, zullen ook weten waar ik het over heb: begin gewoon een woord te typen en de gerelateerde bestanden of programma's verschijnen.

Op lichtere distributies is dit iets moeilijker te bereiken. Maar de methode die ik je ga leren is ZEER licht (volgens distro's van dit type) en effectief.

Kies het opstartprogramma: dmenu

Mijn eerste keuze was om draagraketten te proberen die niet afhankelijk zijn van een bepaalde omgeving of distro. Ik bedoel Synapse (wat nu in de mode is), Gnome-Do, Kupfer, etc. Ze hebben allemaal één ding gemeen: ze kunnen geen "volledige tekst" zoekopdrachten uitvoeren (dat wil zeggen, binnen bestanden). Bovendien worden ze geleverd met veel andere plug-ins die niet veel voor mij bijdragen. Om nog maar te zwijgen, ze zijn niet "minimalistisch" en licht genoeg.

Degenen die Openbox, Enlightenment of iets dergelijks gebruiken, kennen dmenu waarschijnlijk. Degenen die het nog nooit hebben gebruikt, ik raad u aan dit te bezoeken oud bericht waar de belangrijkste kenmerken worden uitgelegd. Kortom, het is een ultra-minimalistische en superlichte applicatiestarter. Maar het is niet alleen dat, wat ik niet wist, is dat als het correct is geconfigureerd, het ook kan worden gebruikt om elementen van elke lijst weer te geven die we eraan doorgeven. Deze ontdekking opent de deuren naar vele mogelijkheden ...

Om dmenu in Arch te installeren, opent u gewoon een terminal en voert u uit:

sudo pacman -S dmenu

Installeer Recoll

De tweede ontdekking was Recoll. Onze vriend Fico sprak over hem een paar maanden geleden, artikel waarvan ik het lezen aanbeveel.

Recoll is een zeer lichte tool, onafhankelijk van elke desktopomgeving, waarmee u in volledige tekst ("volledige tekst") kunt zoeken. Hiervoor moet u uiteraard eerst de bestanden indexeren, wat even kan duren, maar nadat de initiële indexering is voltooid, duurt de rest van de updates niet lang.

Recoll is een grafische interface, gebruiksvriendelijk en met veel opties, ontworpen in QT en gebaseerd op de zoekmachine Xapian.

Gebruik je nog steeds lokaliseren, zoeken of meerval? Ha! Ik bleef lezen ...

Om Recoll op Arch en afgeleiden te installeren:

yaourt -S recoll

U zult merken dat recoll een aantal pakketten heeft als optionele afhankelijkheden:

  • libxslt: voor op XML gebaseerde formaten (fb2, enz.)
  • unzip: voor de OpenOffice.org-documenten
  • xpdf: voor pdf
  • pstotext: voor postscipt
  • antiword: voor msword
  • catdoc: voor ms excel en powerpoint
  • unrtf: voor RTF
  • untex: voor dvi-ondersteuning met dvips
  • djvulibre: voor djvu
  • id3lib: voor ondersteuning van mp3-tags met id3info
  • python2: voor het gebruik van enkele filters
  • mutageen: audiometadata
  • python2-pychm: CHM-bestanden
  • perl-image-exiftool: EXIF-gegevens van onbewerkte bestanden
  • aspell-en: Engelse stamondersteuning

Door deze pakketten te installeren, kan Recoll de inhoud van de corresponderende bestandstypen indexeren. Met antiword kan Recoll bijvoorbeeld de inhoud van .DOC-bestanden indexeren, enz.

De selectie van aanvullende componenten die u wilt installeren, is afhankelijk van uw behoeften en de verscheidenheid aan bestandstypen die op uw computer zijn opgeslagen. Maar wanhoop niet, want Recoll zal, na het indexeren van onze bestanden, aanbevelen welke componenten moeten worden geïnstalleerd om hun effectiviteit te verbeteren.

Hoe Recoll te gebruiken

Wanneer u Recoll voor de eerste keer start, zal het onderstaande scherm verschijnen. Als u alleen uw HOME (volledig) wilt indexeren, klikt u gewoon op Begin nu met indexeren.

Herhaal het startscherm

Herhaal het startscherm

Recoll heeft krachtige zoekfaciliteiten. Naast het invoeren van de woorden om te zoeken, staat het ook Booleaanse zoekopdrachten toe, ondersteund met proximity-clausules, waarbij de soorten bestanden of locaties worden gefilterd. Het maakt ook Xesam-compatibel zoeken mogelijk, op veld en filteren op datum.

De reactie van het programma bij het uitvoeren van zoekopdrachten en het presenteren van resultaten is ook verrassend vanwege de snelheid, en interessant voor de manier waarop ze die resultaten presenteren, het bepalen van de meest relevante documenten, voor de zoektermen die worden aangeboden en inclusief een preview.

In de onderstaande afbeelding heb ik besloten om de resultaten in een tabel weer te geven, hoewel Recoll standaard wordt geleverd met een andere stijl om de resultaten te tonen, veel vollediger en beschrijvend.

Resultaten van een zoekopdracht in Recoll

Resultaten van een zoekopdracht in Recoll

Ga naar om de ontbrekende pakketten te zien zodat Recoll een volledige indexering van uw bestanden kan uitvoeren Bestand> Ontbrekende helpers weergeven.

Ontbrekende extra componenten

Ontbrekende extra componenten

En Voorkeuren> Indexeringsschema U kunt het schema voor het indexeren van bestanden configureren. Om Recoll goed te laten werken, moet het uiteraard al uw bestanden indexeren (of in ieder geval de bestanden in de map die u interesseert, meestal uw HOME). Hiervoor zijn er 3 alternatieven: handmatig indexeren (mijn voorkeur), indexeren via cron of indexeren bij het opstarten van het systeem.

Indexeringsprogrammering in Recoll

Indexeringsprogrammering in Recoll

Magie: Recoll en dmenu combineren ... is het mogelijk?

Ja ja het is. De truc is om te weten dat je met dmenu niet alleen een lijst met applicaties kunt maken, maar ook alles wat we eraan doorgeven. U hoeft alleen maar uit te zoeken hoe u Recoll kunt doorzoeken met een terminal en de resultaten door te geven aan dmenu.

Magie wordt bereikt, hoe kan het ook anders, door middel van een simpele script, wiens auteurschap Massimo Lauria is en dat ik een beetje durfde aan te passen om het in het Spaans te vertalen.

Download script

Sla het bestand op (laten we zeggen, search-recoll.sh). Geef het uitvoeringsrechten (sudo chmod + om-recoll.sh op te halen) en wijs er een geschikte toetsencombinatie aan toe. In Openbox wordt dit bereikt door het bestand te bewerken ~ / .config / openbox / rc.xml of via de grafische interface obkey.

Het eindresultaat: zoeken in volledige tekst met zeer weinig middelen. Zoals de Bambino Veira zou zeggen: "Schoonheid!"

dmenu bij het invoeren van zoektekst

dmenu bij het invoeren van zoektekst

dmenu, met de resultaten die zijn geretourneerd door recoll

dmenu, met de resultaten die zijn geretourneerd door recoll

japa

Degenen die Ubuntu gebruiken, kunnen vergelijkbare resultaten krijgen via Recoll's Lens. Om dit te doen, is het noodzakelijk om de bijbehorende PPA toe te voegen en de volgende pakketten te installeren:

sudo 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

Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: Miguel Ángel Gatón
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.

  1.   levendig zei

    Gewoon geweldig U_U

  2.   laten we linux gebruiken zei

    Dat klopt ... 🙂 En het is VEEL sneller en lichter dan je geliefde KDE ... haha!

    1.    levendig zei

      Het kan zijn, maar ik verander mijn geïntegreerde Dolphin-zoekmachine voor niets. 😉

      1.    laten we linux gebruiken zei

        Ah ... ja ... Dolfijn is iets anders ... grote woorden.

  3.   AlonsoSanti 14 zei

    en in gnome hoe configureer ik het, zodat het doet wat je zegt de "full text search"?
    Ik hoop dat je me kunt helpen, want als ik op die manier naar documenten zou willen zoeken.

    1.    laten we linux gebruiken zei

      Ik gebruik GNOME niet, maar als ik het me goed herinner, wordt het geleverd met een tool genaamd Tracker die kan worden gebruikt om full-text zoekopdrachten uit te voeren.
      Proost! Paul.

      1.    AlonsoSanti 14 zei

        ok bedankt, op dit moment ben ik op zoek naar info over Tracker.

  4.   gonzalezmd (# Bik'it Bolom #) zei

    Het is goed om deze oplossingen te kennen. Dank je.

    1.    laten we linux gebruiken zei

      Aan jou, voor commentaar. 😉

  5.   maxi89 zei

    In mijn geval weet ik iets heel eenvoudigs dat in alle distributies zit ... het is «updatedb» en gebruik dan «zoek bestand», het is heel gemakkelijk en heel licht ajaaja

    1.    eliotime3000 zei

      Ja, maar soms is het leuk om een ​​heel eind te gaan.

    2.    laten we linux gebruiken zei

      Dat is niet goed. Met find en updatedb is het niet mogelijk om full text te doorzoeken.
      Proost! Paul

  6.   gonz_212 zei

    Zeer goede post, interessante informatie ... Ik ben het aan het testen.
    Ik ga naar de pagina om het script te downloaden dat je als laatste hebt achtergelaten, maar ik krijg een foutmelding. Ik zou het op prijs stellen als je het opnieuw kunt uploaden.

    Hartelijk dank, groeten!

    🙂

    1.    laten we linux gebruiken zei

      Het werkt goed. Probeer het opnieuw ...

      1.    gonz_212 zei

        Heel erg bedankt, nu kan ik het downloaden.

        Groeten!

        🙂

  7.   gonz_212 zei

    Sorry, maar ik heb het op mijn computer geprobeerd en het werkt niet voor mij. Ik heb ArchLinux met de PekWM-manager (geen desktopomgeving) ... maar het script lijkt niet te werken. Kan iemand mij helpen?

    Hartelijk dank, groeten!

  8.   laten we linux gebruiken zei

    Kunt u iets beter specificeren wat niet voor u werkt?

    1.    gonz_212 zei

      De waarheid is dat ik niet weet of het zal worden uitgevoerd ... in de PekWM-manager is er een bestand met de naam «keys» (te vinden in de directory /home/usuario/.pekwm/) waar de sneltoetsen (of sneltoetsen) zijn geconfigureerd, dus heb ik het script toegewezen aan de combinatie Ctrl + F, maar ik weet niet of de syntaxis van het uit te voeren commando correct zal zijn.

      Ik laat je zien hoe de regel die overeenkomt met die combinatie van toetsen is geschreven:

      KeyPress = "Ctrl F" {Actions = "Exec` sh search-recoll.sh`"}

      opmerking: het script search-recoll.sh bevindt zich in mijn huis, dat wil zeggen in / home / myuser /

      Maar als ik op Ctrl + F druk, gebeurt er niets ... Ik heb geprobeerd de regel aan te passen zodat het dmenu uitvoert in plaats van het script en het werkt.

      Een ander ding dat ik deed, was het genoemde script in de terminal uitvoeren, en toen ik het deed, liet het me het volgende zien:

      $ sh search-recoll.sh
      search-recoll.sh: regel 39: syntactische fout, het einde van het bestand werd niet verwacht

  9.   gonz_212 zei

    Excuses voor het ongemak, ik heb het probleem al opgelost. Wat er gebeurde, was dat ik het script van de plak heb gedownload en op die manier is er een probleem met de codering die het gebruikt. Daarom moet u alle inhoud kopiëren en in een leeg bestand plakken, zodat het dit ongemak niet veroorzaakt.

    Duizend excuses, in ieder geval heel erg bedankt.

    Groeten!