logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

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édentes Révision précédente
Prochaine révision Les deux révisions suivantes
doc:systeme:grep [14/07/2014 22:36]
smolski [grep]
doc:systeme:grep [15/07/2014 09:00]
paskal
Ligne 1: Ligne 1:
 ====== grep  ====== ====== grep  ======
  
-(//testé// - **smolski** 18/10/2012) Le retour sur le forum est ici : 
-  * [[http://​debian-facile.org/​viewtopic.php?​id=1039 | Lien vers le forum concernant ce tuto]] N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs ! 
   * Objet : filtre grep   * Objet : filtre grep
-  * Niveau requis : DÉBUTANT +  * Niveau requis : {{tag>​débutant}} 
-  * Commentaires : // Recherche de caractères dans des fichiers textes. // +  * Commentaires : //Recherche de caractères dans des fichiers textes.// 
-  * Débutant, à savoir : +  * Débutant, à savoir : [[:​doc:​systeme:​commandes:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !]] :-
-[[:​doc:​systeme:​commandes:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-)+  * Suivi : 
 +    * Création par [[user>​smolski]] le 23/​04/​2010 
 +    * Testé par smolski le 18/​10/​2012 
 +  * Commentaires sur le forum : [[https://​debian-facile.org/​viewtopic.php?​id=1039 | c'est ici]] ((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !))
  
-Le programme grep explore un ou une série de fichiers d'un ou plusieurs répertoires à la recherche de texte filtrés par une expression régulière donnée (//des lettres, des chiffres//​... ). 
  
 ===== Introduction ===== ===== Introduction =====
  
 L'​acronyme((acronyme : Sigle pouvant être prononcé comme un mot. Eh oui !)) grep vient de la contraction de **Get Regular Expression Print**, //Print// signifiant l'​affichage. L'​acronyme((acronyme : Sigle pouvant être prononcé comme un mot. Eh oui !)) grep vient de la contraction de **Get Regular Expression Print**, //Print// signifiant l'​affichage.
 +
 +
 +Le programme grep explore un ou une série de fichiers d'un ou plusieurs répertoires à la recherche de textes filtrés par une expression régulière donnée (//des lettres, des chiffres//​... ).
  
 ===== TP01 ===== ===== TP01 =====
Ligne 20: Ligne 23:
  
 Créez un répertoire test1 avec un fichier nommé essai.txt comportant des noms et prénoms avec la commande [[cat]] : Créez un répertoire test1 avec un fichier nommé essai.txt comportant des noms et prénoms avec la commande [[cat]] :
-<​code ​bash> +<​code ​user>mkdir test1</​code>​
-mkdir test1</​code>​+
  
 Créez le fichier(([[:​doc:​systeme:​touch]])) essai.txt ainsi : Créez le fichier(([[:​doc:​systeme:​touch]])) essai.txt ainsi :
-<​code ​bash> +<​code ​user>touch essai.txt</​code>​
-touch essai.txt</​code>​+
  
 Et rédigez(([[:​doc:​systeme:​cat]])) ce fichier **test1/​essai.txt** ainsi : Et rédigez(([[:​doc:​systeme:​cat]])) ce fichier **test1/​essai.txt** ainsi :
-<​code ​bash>+<​code ​user>
 cat > test1/​essai.txt <<EOF cat > test1/​essai.txt <<EOF
- 
 tartempion eric tartempion eric
 greg lucien greg lucien
Ligne 38: Ligne 38:
  
 Utilisez la commande [[:​doc:​systeme:​cat]] pour en vérifier le contenu : Utilisez la commande [[:​doc:​systeme:​cat]] pour en vérifier le contenu :
-<​code ​bash>cat test1/​essai.txt +<​code ​user>cat test1/​essai.txt</​code>​ 
 +<​code>​
 tartempion eric tartempion eric
 greg lucien greg lucien
Ligne 46: Ligne 46:
  
 De la même façon que précédemment,​ créons un second répertoire nommé ''​test2''​ dans lequel nous créons le fichier **adresse.c** contenant les chaînes de caractères suivantes : De la même façon que précédemment,​ créons un second répertoire nommé ''​test2''​ dans lequel nous créons le fichier **adresse.c** contenant les chaînes de caractères suivantes :
-<​code ​bash>+<​code ​user>
 cat > test2/​adresse.c <<EOF cat > test2/​adresse.c <<EOF
 25, rue de la source 25, rue de la source
Ligne 54: Ligne 54:
  
 On vérifie les deux fichiers d'un coup ainsi : On vérifie les deux fichiers d'un coup ainsi :
-<​code ​bash> +<​code ​user>cat ~/​test1/​essai.txt ~/​test2/​adresse.c</​code>​
-cat ~/​test1/​essai.txt ~/​test2/​adresse.c</​code>​+
 <​code>​tartempion eric <​code>​tartempion eric
 greg lucien greg lucien
Ligne 71: Ligne 70:
  
 La commande suivante présente toutes les lignes du fichier essai.txt qui contiennent le caractère "​**c**"​ : La commande suivante présente toutes les lignes du fichier essai.txt qui contiennent le caractère "​**c**"​ :
-<​code ​bash>grep c ~/​test1/​essai.txt</​code>​+<​code ​user>grep c ~/​test1/​essai.txt</​code>​
 <​code>​tartempion eric <​code>​tartempion eric
 greg lucien greg lucien
Ligne 77: Ligne 76:
  
 Et celle-là pour la lettre "​**u**"​ : Et celle-là pour la lettre "​**u**"​ :
-<​code ​bash>grep u ~/​test1/​essai.txt</​code>​+<​code ​user>grep u ~/​test1/​essai.txt</​code>​
 <​code>​greg lucien</​code>​ <​code>​greg lucien</​code>​
  
Ligne 83: Ligne 82:
 La commande ''​grep''​ peut être étendue à tous les fichiers d'un **répertoire**,​ ou encore à tous les fichiers correspondant à un certain //masque//. La commande ''​grep''​ peut être étendue à tous les fichiers d'un **répertoire**,​ ou encore à tous les fichiers correspondant à un certain //masque//.
  
-Dans l'​exemple qui suit : ''​grep a te*/​*'',​ la commande ''​grep''​ explorera dans le répertoire :+Dans l'​exemple qui suit : ''​grep a te*/​*'',​ la commande ''​grep''​ explorera dans le répertoire :
   - /home de l'//​user//​   - /home de l'//​user//​
-  - à l'interieur ​des répertoires commençant par "​**te**"​+  - à l'intérieur ​des répertoires commençant par "​**te**"​
   - tous les types de fichiers dont les chaînes de caractère contiennent la lettre "​**a**"​   - tous les types de fichiers dont les chaînes de caractère contiennent la lettre "​**a**"​
  
-<​code ​bash>grep a ~/​te*/​*</​code>​+<​code ​user>grep a ~/​te*/​*</​code>​
 <​code>​ <​code>​
 test1/​essai.txt:​tartempion eric test1/​essai.txt:​tartempion eric
Ligne 102: Ligne 101:
  
 L'​option ''​-n''​ ajoute le numéro de ligne, ainsi : L'​option ''​-n''​ ajoute le numéro de ligne, ainsi :
-<​code ​bash> +<​code ​user>grep -n a ~/​te*/​*</​code>​
-grep -n a ~/​te*/​*</​code>​+
 <​code>​ <​code>​
 test1/​essai.txt:​2:​tartempion eric test1/​essai.txt:​2:​tartempion eric
Ligne 148: Ligne 146:
 dans l'​expression régulière car ces caractères ont une signification particulière pour le shell. \\ dans l'​expression régulière car ces caractères ont une signification particulière pour le shell. \\
 Il vaut mieux mettre l'​expression régulière entre apostrophes simples ou doubles ''​ '​...'​ ou  "​..."​ ''​ comme ceci par exemple : Il vaut mieux mettre l'​expression régulière entre apostrophes simples ou doubles ''​ '​...'​ ou  "​..."​ ''​ comme ceci par exemple :
-<​code ​bash> +<​code ​user>grep -n "​^t"​ te*/​*</​code>​
-grep -n "​^t"​ te*/​*</​code>​+
 <​code>​test1/​essai.txt:​2:​tartempion eric</​code>​ <​code>​test1/​essai.txt:​2:​tartempion eric</​code>​
  
Ligne 155: Ligne 152:
  
 Pour plus d'​information sur la commande grep, lancez : Pour plus d'​information sur la commande grep, lancez :
-    $ man grep.+<code user>man grep</​code>​ 
doc/systeme/grep.txt · Dernière modification: 30/11/2020 17:35 par JoBisou

Pied de page des forums

Propulsé par FluxBB