Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
|
ressource:logiciel:manipulation_pdf:start [2026/05/13 16:47] emoc [Extraire tous les mots d'un pdf] |
ressource:logiciel:manipulation_pdf:start [2026/05/13 17:08] (Version actuelle) emoc [Extraire tous les mots d'un pdf] |
||
|---|---|---|---|
| Ligne 133: | Ligne 133: | ||
| ''sudo apt install poppler-utils'' | ''sudo apt install poppler-utils'' | ||
| - | <code bash> | + | <code bash frequence-mots.sh> |
| pdftotext "$1" - \ | pdftotext "$1" - \ | ||
| | perl -CS -ne 'while (/(\p{L}+(?:-\p{L}+)*)/g) { print lc($1), "\n"; }' \ | | perl -CS -ne 'while (/(\p{L}+(?:-\p{L}+)*)/g) { print lc($1), "\n"; }' \ | ||
| Ligne 142: | Ligne 142: | ||
| </code> | </code> | ||
| - | Usage : '' | + | Usage : ''frequence-mots.sh fichier.pdf > liste_mots.txt'' \\ |
| + | **Détails** : \\ | ||
| + | ''perl -CS -ne'' : CS pour travailelr en unicode (lettres accentuées, etc.), n pour traiter ligne par ligne, e pour fournir le code perl directement sur la ligne de commande \\ | ||
| + | ''while (/(\p{L}+(?:-\p{L}+)*)/g) { print lc($1), "\n"; }'' : code perl qui se répète tant que l'expression régulière trouve des mots (les mots composés avec tiret sont considérés comme un seul mot), $1 contient le mot trouvé, lc($1) le transforme en minuscule \\ | ||
| + | ''awk 'length($0) >= 3''' : seuls les mots de plus de 3 lettres sont conservés \\ | ||
| + | ''sort'' : tri par ordre alphabétique \\ | ||
| + | ''uniq -c'' : regroupe les mots identiques sur la même ligne, préfixé par le nombre d'occurences \\ | ||
| + | ''sort -nr'' : tri numérique des lignes en ordre décroissant | ||
| + | |||
| + | Utile pour réordonner le fichier par ordre alphabétique et insensible à la casse : | ||
| + | <code bash> | ||
| + | LC_ALL=fr_FR.UTF-8 sort -f -o lexique.txt lexique.txt | ||
| + | </code> | ||
| ==== Conversion de profil de couleur ==== | ==== Conversion de profil de couleur ==== | ||