cerhu > linux.debian.user.french

fab (23/11/2018, 18h30)
'lut,

Pour re-rebondir à propos de la demande de Steve. J'ai concocté il y a
un petit bout de temps, un utilitaire en mode graphique
(search_pattern), avec yad, permettant de rechercher un motif dans tout
type de fichier.

search_pattern.sh se base sur /usr/bin/uvgrep, que j'ai un peu modifié,
qui lui même nécessite grep / pdfgrep / unzip / libxml2-utils

bon we ;)

f.
Haricophile (23/11/2018, 20h40)
Le Fri, 23 Nov 2018 14:54:27 +0100,
steve <dlist> a écrit :

> Pour rebondir à ce sujet, je cherche (sans vraiment chercher) un bon
> moyen de chercher dans des pdf avec une vue des résultats pas trop
> rébarbatives et configurable si possible.
> Si quelqu'un dans la salle a une suggestion, je suis preneur.
> Merci.
> Steve


La question se pose de savoir

1. l'étendue de la recherche
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Chercher dans un fichier
- chercher dans quelques fichiers ou dossiers
- chercher dans de vastes ensembles de documents et dossiers

2. Quel type de PDF
~~~~~~~~~~~~~~~~~~~

Dans un PDF on peut trouver :
- des métadonnées
- du texte
- des images et autres contenus sans signification sémantique.

- Pour un seul document, il y a quelques outils pour extraires les metadata
(dont le couteau suisse PDFTK)

- Pour le texte il y a quelques outils comme pdfgrep ou on peut l'extraire avec
pdf2text pour manipulation.

- Pour les "pdfimage" autre manière de dire un PDF ne contenant qu'uneseule
image genre un document scanné en mode image, pas d'autre solution que
d'utiliser un OCR et à condition que la qualité de l'image soitsuffisante.
Ou alors passer le temps qu'il faut pour renseigner les metadata (avec pdftk
ou autre).

3. Les "moteurs" de recherche.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Comme il y a des moteurs de recherche pour les sites capable de faire ça, il y
a des "desktop search" quand on a de grandes quantités de documents. Pour Gnome
c'est "gnome-tracker" assez performant si on sait manipuler le language sparql
(requêtes proches de SQL en ligne de commande), Baloo beaucoup plus simpliste
sous KDE ou Recoll avec une interface QT. Il y en a d'autre mais ils ont comme
point commun de bouffer pleins de ressources au moment de l'indexation, surtout
si on ouvre les fichiers compressés. Si j'avais un métier documentaire avec de
gros volumes de documents, je mettrais certainement ça sur une machinedédiée.

4. Solution "a ma sauce" :
~~~~~~~~~~~~~~~~~~~~~~~~

Actuellement, la plupart du temps, pour le desktop, j'utilise catfish et je
veille a nommer mes fichiers avec un soucis sémantique :
musique.initiation.les_clés.2018-11-23.pdf
ou bien :
./musique/initiation/les_clés.2018-11-23.pdf
c'est plus facile a retrouver que :
clés-20211sfdfdgl.pdf

On ne peut pas tout mettre dans le nom de fichier, mais en choisissant bienun
peu de "vocabulaire contrôlé" on arrive a retrouver rapidement 99% de ce qu'on
cherche au quotidien.

Par vocabulaire contrôlé, j'entends quelque chose qui ressemble au
fichiers .po :

- vx-bas = voix basse
- vx-sop = voix soprano
- i-viol = instrument violon
- mus-v = musique vocale
- mus-i = musique instrumentale
- 2018-11-23 = la date au format ISO qui se trie bien même si elle est
partielle comme 2018-11 (je classe les photos par date par exemple).

le tout mis dans une hiérarchie bien organisée j'ai des fichiers avec un nom
d'une taille raisonnable et facile a retrouver sans desktop-search. Un éventuel
find + grep et/ou pdfgrep exiv2 ou autre chose peut faire le reste. en cas de
besoin.
hamster (24/11/2018, 01h40)
Le 23/11/2018 à 10:03, Pierre Frenkiel a écrit :
>   si l'on ne recherche que dans son dossier perso, tu as raison, mais
>   il arrive que même un utilisateur lambda aie besoin de rechercher
>   ailleurs


Oh oui, il arrive qu'un simple utilisateur ait besoin de chercher
ailleurs. Mais dans "simple utilisateur" il y a énormément de diversité.
Quelqu'un qui ne sait meme pas qu'il existe un "ailleurs" sera perdu par
un outil qui lui sort des résultats hors de son dossier perso.

> et je répète que le updatedb est fait la nuit


Donc en fait, je télécharge un fichier, firefox me l'enregistrea un
endroit par défaut que je connais pas par coeur, je dois donc attendre
le lendemain pour lancer une recherche et retrouver le truc ?

Oui, je sais, dans firefox on peut faire afficher l'historique des
téléchargements et voir ou il a été enregistré, on peut aussi ouvrir les
préférences de firefox et voir ou est l'endroit par défaut? mais ca
c'est des choses que les utilisateurs un minimum formés savent faire.
Pas les autres.

>   A quoi sert le grep? "locate /home/user" suffit..


Ah, je connaissait pas cet usage de locate. Merci pour le tuyau.

>   Autre avantage de locate: on peut rediriger sa sortie sur un fichier,
>   si l'on veut la conserver pour une raison quelconque
>     locate blablabla > liste
>   comment fais-tu avec un outil graphique, kfind ou autre?


HAHAHA

Est-ce que par hasard tu te foutrais de la gueule du monde ? Toi tu
serait du genre a mettre une formule 1 ou une voiture de rallye dans les
mains d'un débutant qui en est a sa première lecon d'auto-école !

Soyons un peu sérieux : parler de ligne de commande a "une mémé", soit
c'est une mémé exceptionnelle soit c'est une stupidité de celui qui
parle ! Le simple fait que dans un terminal on ne peut pas bouger le
curseur avec la souris mais il faut utiliser les flèches, c'est déjà
tout un apprentissage a faire pour 95 % des "mémés" que j'ai eu
l'occasion de fréquenter.
Bernard Schoenacker (24/11/2018, 06h40)
----- Mail original -----
[..]
> mains d'un débutant qui en est a sa première lecon d'auto-école !
> Soyons un peu sérieux : parler de ligne de commande a "une mémé",
> soit
> c'est une mémé exceptionnelle soit c'est une stupidité de celui qui
> parle ! Le simple fait que dans un terminal on ne peut pas bouger le
> curseur avec la souris mais il faut utiliser les flèches, c'est déjà
> tout un apprentissage a faire pour 95 % des "mémés" que j'ai eu
> l'occasion de fréquenter.


bonjour,

voici la solution facile à mettre en ?uvre :

installer catfish et créer l'entrée suivante :

cat >$HOME/Catfish.desktop <<EOF
[Desktop Entry]
Version=1.0
Type=Application
Name=Recherche de fichiers Catfish
Comment=Rechercher dans le système de fichiers
Exec=/usr/bin/catfish %f --hidden
Icon=catfish
Path=$HOME
Terminal=false
StartupNotify=true
EOF

inspiration :
[..]

merci
slt
bernard
Pierre Frenkiel (24/11/2018, 11h40)
On Sat, 24 Nov 2018, Bernard Schoenacker wrote:

[..]
> Terminal=false
> StartupNotify=true
> EOF


Bernard,
cette manip(installer catfish + config + appel de catfish)
est-elle vraiment plus simple que de taper

updatedb (sur mon portable, ça prend 6 secondes)
locate blabla | grep /home/meme

de plus, je dois être plus nul que la mémé lambda, car je necomprends pas
ce que j'obtiens: malgré la ligne "Path=$HOME", il m'affiche des fichiers
sur tous mes disques.

Cordialement,
steve (24/11/2018, 11h40)
Salut Harico,

Merci pour ta longue et détaillée réponse.

Le 23-11-2018, à 15:54:38 +0100, Haricophile a écrit :

>Le Fri, 23 Nov 2018 14:54:27 +0100,
>steve <dlist> a écrit :
>>La question se pose de savoir

>1. l'étendue de la recherche
>~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>- Chercher dans un fichier
>- chercher dans quelques fichiers ou dossiers


Ce serait plutôt ce cas. Ce sont des pdf professionnelles, organisés par
années puis fonctions (RH, Légal, Finance, etc?)

>- chercher dans de vastes ensembles de documents et dossiers
>2. Quel type de PDF
>~~~~~~~~~~~~~~~~~~~
>Dans un PDF on peut trouver :
>- des métadonnées
>- du texte
>- des images et autres contenus sans signification sémantique.


Il y a aussi des images, mais la plupart du temps, c'est sous la forme
de présentations.

>- Pour un seul document, il y a quelques outils pour extraires les metadata
> (dont le couteau suisse PDFTK)


Que j'utilise assez souvent pour extraire une partie d'un document pdf.
Marche super bien.

>- Pour le texte il y a quelques outils comme pdfgrep ou on peut l'extraire avec
> pdf2text pour manipulation.


J'ai découvert grâce à Klaus ce pdfgrep, et je dois dire que c'est assez
performant.

>- Pour les "pdfimage" autre manière de dire un PDF ne contenant qu'une seule
> image genre un document scanné en mode image, pas d'autre solution que
> d'utiliser un OCR et à condition que la qualité de l'image soit suffisante.
> Ou alors passer le temps qu'il faut pour renseigner les metadata (avec pdftk
> ou autre).


Je vais mettre ce cas de côté.

>3. Les "moteurs" de recherche.
>~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>Comme il y a des moteurs de recherche pour les sites capable de faire ça, il y
>a des "desktop search" quand on a de grandes quantités de documents. Pour Gnome
>c'est "gnome-tracker" assez performant si on sait manipuler le language sparql
>(requêtes proches de SQL en ligne de commande), Baloo beaucoup plus simpliste
>sous KDE ou Recoll avec une interface QT. Il y en a d'autre mais ils ont comme
>point commun de bouffer pleins de ressources au moment de l'indexation, surtout
>si on ouvre les fichiers compressés. Si j'avais un métier documentaire avec de
>gros volumes de documents, je mettrais certainement ça sur une machine dédiée.


Ok, je vais voir tout ça.

[..]
>- i-viol = instrument violon
>- mus-v = musique vocale
>- mus-i = musique instrumentale
>- 2018-11-23 = la date au format ISO qui se trie bien même si elle est
> partielle comme 2018-11 (je classe les photos par date par exemple).
>le tout mis dans une hiérarchie bien organisée j'ai des fichiers avec un nom
>d'une taille raisonnable et facile a retrouver sans desktop-search. Un éventuel
>find + grep et/ou pdfgrep exiv2 ou autre chose peut faire le reste. en cas de
>besoin.


Je n'utilise pas le renommage de fichiers car je ne suis pas le seul à
les utiliser. Je préfère les organiser hiérarchiquement, c'est déjà un
tri qui permet de restreindre le champ de recherche.

Merci pour ton input !

Steve
steve (24/11/2018, 12h00)
Salut fab,

Merci pour cette utilitaire. J'ai fait quelques essais et je dois dire
que ça marche pas mal du tout. Je vais par contre essayer de modifier
ton script pour ajouter deux choses.

- la récursivité
- l'affichage du numéro de page de l'occurrence trouvée

Encore merci.

Steve
JC.EtiembleG (24/11/2018, 12h30)
Le 24/11/2018 à 05:39, Bernard Schoenacker a écrit :

Bonjour,

Si c'est pour le gestionnaire Thunar, catfish installé
Il suffit d'aller dans le menu Édition Configurer Actions personnalisées
ajouter une action l?icône +
- Nom = Recherche
- Description = Effectuer une recherche
- Commande = /usr/bin/catfish --path=%f
Icône= /usr/share/icons/hicolor/scalable/apps/catfish.svg
+ dans l'onglet condition = cocher Répertoires + Fichier texte
Tout ça est sauvegardé dans le fichier ~/.config/Thunar/uca.xml
<action>
<icon>/usr/share/icons/hicolor/scalable/apps/catfish.svg</icon>
<name>Recherche</name>
<unique-id>1514296789283541-1</unique-id>
<command>/usr/bin/catfish --path=%f </command>
<description>Effectuer une recherche </description>
<patterns>*</patterns>
<directories/>
<text-files/>
</action>
[..]

Discussions similaires
catfish, strigi, find, locate et Cie ...

application graphique find

plantage excel avec la fonction find et find next

unix - fichiers prives et utilisation de find / locate


Fuseau horaire GMT +2. Il est actuellement 08h08. | Privacy Policy