Outils pour utilisateurs

Outils du site


reseau:regexp:accueil

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
reseau:regexp:accueil [2021/11/25 11:28] – [Définir des expressions régulières] techer.charles_educ-valadon-limoges.frreseau:regexp:accueil [2021/11/30 15:24] (Version actuelle) – [grep] techer.charles_educ-valadon-limoges.fr
Ligne 24: Ligne 24:
   * grep   * grep
   * sed   * sed
 +  * less
 </WRAP> </WRAP>
  
 +
 +===== les commandes linux utiles =====
 +  * **cd** : aller dans un dossier (absolu « /home/nouvel/test... » ou relatif « test/ »),
 +  * **ls** : afficher les fichiers du dossier courant,
 +  * **pwd** : afifcher le chemin du dossier courant,
 +  * **mkdir** : créer un dossier,
 +  * **rm** : effacer un fichier (ou un dossier : « rm -r »),
 +  * **cat** : envoie le contenu d'un (des) fichier(s) vers le flux de sortie standard,
 +  * **less** : visualiser un flux (fèches pour monter / descendre, « q » pour quitter),
 +  * **grep** : afficher les lignes du fux qui correspondent à une expression régulière,
 +  * **sort** : trie les lignes du flux par ordre lexicographique,
 +  * **uniq** : omet les lignes répétées dans le fux,
 +  * **wc** : compte le nombre de lignes / mots / caractères dans le flux.
 +===== Le pipe =====
 +Le pipe **|** permet de changer la destination d'un flux de données
 +==== Par exemple : ====
 +  * Envoyer le contenu d'un fichier vers la sortie standard (terminal) :
 +<code shell>
 +cat fichier.txt
 +</code>
 +  * Envoyer le contenu d'un fichier vers la visualisation paginée :
 +<code shell>
 +cat fichier.txt | less
 +</code>
 +  * Envoyer le contenu d'un fichier vers **grep** pour sélectionne les lignes contenant le mot **limoges** et les le 
 +</code>
 +visualiser page par page :
 +<code shell>
 +cat fichier.txt | grep limoges | less
 +</code>
 +  * Envoyer le contenu d'un fichier vers **grep**, qui sélectionne les lignes contenant le mot **limoges** puis enregistre les lignes dans un autre fichier :
 +<code shell>
 +cat fichier.txt | grep limoges > fichierlimoges.txt
 +</code>
 +=== Conseils ===
 +  * tester des commandes dans le terminal,
 +  * lorsque la sortie est volumineuse, ajoutez ** | less ** pour visualiser page par page ,
 +  * pour enregistrer la sortie dans un fichier, ajoutez ** > fchier.txt **,
 +  * pour voir (ou compter) des entrées distinctes, ajoutez **| sort | uniq -c**.
 +===== grep ====
 +**grep** signifie **Global Regular Expression Print** et est un outil en ligne de commande Linux / Unix utilisé pour rechercher une chaîne de caractères dans un fichier spécifié.
 +<WRAP center round info>
 +grep vous permet de rechercher et d'afficher des résultats pour des mots entiers uniquement.
 +</WRAP>
 +
 +
 +Le modèle de recherche de texte est appelé une **expression régulière (regex)**. Lorsqu'il trouve une correspondance, il imprime la ligne avec le résultat. La commande grep est pratique lors de la recherche dans de gros fichiers journaux.
 +
 +**grep** peut s'utiliser directement pour rechercher un motif dans un fichier mais également via un **pipe**.
 +
 +Les commandes suivantes alors équivalentes :
 +<code shell>
 +grep motif nomfichier
 +</code>
 +ou
 +<code shell>
 +cat nomfichier | grep motif
 +</code>
 +
 +Pour rendre **grep** insensible à la casse, utilisez l'option -i :
 +
 +Options utiles
 +^  option  ^ Action  ^
 +|-i| insensible à la casse|
 +|-w| rechercher dans tous le fichiers|
 +|-n| afficher les numéros de ligne|
 +|-v| inverser la recherche pour exclure|
 +|-mx| Limiter le nombre de sortie à x ligne|
 +|-e chaine1 -e chaine2| Rechercher plusieurs chaînes|
 +|-Ee "chaine1%%|%%chaine2"| Rechercher plusieurs chaînes avec les regex|
 +|-c| compter le nombre de ligne|
 +|"%%^%%chaine"| Rechercher en début de ligne|
 +|"chaine$"| Rechercher en fin de ligne|
 +
 +Lien :
 +  * https://man7.org/linux/man-pages/man1/grep.1.html
 +  * https://www.malekal.com/exemples-de-commande-grep-sous-linux/
 <WRAP center round todo> <WRAP center round todo>
 Découvrir d'autres usages utiles des expressions régulières avec grep sous Linux :  Découvrir d'autres usages utiles des expressions régulières avec grep sous Linux : 
Ligne 32: Ligne 110:
  
  
- +==== Liste de quelques méta-caractères utilisés et leur fonction : =====
- +
-==== Liste de quelques méta-caractères utilisés et leur fonction : ====+
 ^Méta-caractère^Fonction^ ^Méta-caractère^Fonction^
 |\d|Tous les chiffres| |\d|Tous les chiffres|
reseau/regexp/accueil.1637836083.txt.gz · Dernière modification : 2021/11/25 11:28 de techer.charles_educ-valadon-limoges.fr