Travail sur les options de la commande egrep
Consignes:
- Syntaxe générale de la commande egrep
- Fichier de travail
- Options de la commande egrep qui permettent d’obtenir des lignes de contexte
- Afficher le numéro de la ligne où figure le mot recherché
- Afficher le nombre d’occurences du mot recherché
- Ignorer la casse des caractères dans la recherche
- Afficher les noms des fichiers où figure le mot recherché
- Afficher les lignes où ne figure pas le mot recherché
- Afficher les noms des fichiers où ne figure pas le mot recherché
- Afficher les lignes où figure le mot recherché tel quel et non pas ses variantes
- Chercher plusieurs mots à la fois en faisant apparaître le numéro des lignes
Réponses:
- Syntaxe générale de la commande egrep
Commentaire:
egrep [options] "motif" nom_du_fichier
Commentaire:
On utilise le fichier de travail d89.txt qui contient la Déclaration des Droits de l’Homme et du Citoyen de 1789.
- Options de la commande egrep qui permettent d’obtenir des lignes de contexte
Commentaire:
La commande -A NUM affiche n (NUM) ligne(s) après la ligne où figure le mot recherché.
On veut par exemple les quatre lignes qui suivent la ligne où figure le mot recherché (ici Nation).
Commande:
macbook-de-admin:tal-exo admi$ egrep -A 4 "Nation" d89.txt
Résultat:
Le principe de toute Souveraineté réside essentiellement dans la Nation. Nul corps, nul individu ne peut exercer d’autorité qui n’en émane expressément.
Article IV
La liberté consiste à pouvoir faire tout ce qui ne nuit pas à autrui : ainsi l’exercice des droits naturels de chaque homme
n’a de bornes que celles qui assurent aux autres Membres de la Société, la jouissance de ces mêmes droits. Ces bornes ne peuvent être déterminées que par la Loi.
Commentaire:
La commande -B NUM affiche n (NUM) ligne(s) avant la ligne où figure le mot recherché.
On veut par exemple les quatre lignes qui précèdent la ligne où figure le mot recherché (ici Nation).
Commande:
macbook-de-admin:tal-exo admi$ egrep -B 4 "Nation" d89.txt
Résultat:
Le but de toute association politique est la conservation des droits naturels et imprescriptibles de l’homme. Ces droits sont la liberté, la propriété, la sûreté et la résistance à l’oppression.
Article III
Le principe de toute Souveraineté réside essentiellement dans la Nation. Nul corps, nul individu ne peut exercer d’autorité qui n’en émane expressément.
Commentaire:
La commande -C NUM (Ou -NUM) affiche n (NUM) ligne(s) avant et après la ligne où figure le mot recherché.
On veut par exemple, les quatre lignes qui précèdent et qui suivent la ligne où figure le mot recherché (Ici Nation).
Commande:
macbook-de-admin:tal-exo admi$ egrep -C 4 "Nation" d89.txt
Résultat:
Le but de toute association politique est la conservation des droits naturels et imprescriptibles de l’homme. Ces droits sont la liberté, la propriété, la sûreté et la résistance à l’oppression.
Article III
Le principe de toute Souveraineté réside essentiellement dans la Nation. Nul corps, nul individu ne peut exercer d’autorité qui n’en émane expressément.
Article IV
La liberté consiste à pouvoir faire tout ce qui ne nuit pas à autrui : ainsi l’exercice des droits naturels de chaque homme n’a de bornes que celles qui assurent aux autres Membres de la Société, la jouissance de ces mêmes droits. Ces bornes ne peuvent être déterminées que par la Loi.
- Afficher le numéro de la ligne où figure le mot recherché
Commentaire:
On utilise l’option -n de egrep.
Commande:
macbook-de-admin:tal-exo admi$ egrep -n "innocent" d89.txt
Résultat:
40:Tout homme étant présumé innocent jusqu’à ce qu’il ait été déclaré coupable, s’il est jugé indispensable de l’arrêter, toute rigueur qui ne serait pas nécessaire pour s’assurer de sa personne, doit être sévèrement réprimée par la Loi.
Commentaire:
Le motif "innocent" est à la ligne 40.
Commentaire:
Si on demande le numéro ainsi que les lignes de contexte, les numéros de toutes les lignes seront affichés suivis, soit de : si le mot recherché est présent dans la ligne, soit de - si le mot y est absent.
Commande:
macbook-de-admin:tal-exo admi$ egrep -C 4 -n "innocent" d89.txt
Résultat:
36-La Loi ne doit établir que des peines strictement et évidemment nécessaires, et nul ne peut être puni qu’en vertu d’une Loi établie et promulguée antérieurement au délit, et légalement appliquée.
37-
38-Article IX
39-
40:Tout homme étant présumé innocent jusqu’à ce qu’il ait été déclaré coupable, s’il est jugé indispensable de l’arrêter, toute rigueur qui ne serait pas nécessaire pour s’assurer de sa personne, doit être sévèrement réprimée par la Loi.
41-
42-Article X
43-
44-Nul ne doit être inquiété pour ses opinions, même religieuses, pourvu que leur manifestation ne trouble pas l’ordre public établi par la Loi.
- Afficher le nombre d’occurences du mot recherché
Commentaire:
On utilise l’option -c de egrep.
Commande:
macbook-de-admin:tal-exo admi$ egrep -c "homme" d89.txt
Résultat:
6
Commentaire:
Il y a 6 lignes qui contiennent au moins une occurence du mot homme.
- Ignorer la casse des caractères dans la recherche
Commentaire:
On cherche à savoir le nombre d’occurences du mot homme quelque soit sa casse (Différence entre majuscules et minuscules).
Commande:
macbook-de-admin:tal-exo admi$ egrep -ic "homme" d89.txt
Résultat:
9
Commentaire:
On trouve 9 lignes qui contiennent au moins une occurence du mot homme alors qu’auparavent on en avait trouvé 6 en ayant la casse de respectée.
- Afficher les noms des fichiers où figure le mot recherché
Commentaire:
- Afficher les lignes où ne figure pas le mot recherché
Commentaire:
On utilise l’option -v de egrep.
Commande:
macbook-de-admin:tal-exo admi$ egrep -v "de" d89.txt
Résultat:
DÉCLARATION DES DROITS DE L’HOMME ET DU CITOYEN DE 1789
Article premier
Article II
Article III
Article IV
Article V
Article VI
Article VII
Article VIII
Article IX
Article X
Nul ne doit être inquiété pour ses opinions, même religieuses, pourvu que leur manifestation ne trouble pas l’ordre public établi par la Loi.
Article XI
Article XII
Article XIII
Article XIV
Article XV
Article XVI
Article XVII
- Afficher les noms des fichiers où ne figure pas le mot recherché
Commentaire:
- Afficher les lignes où figure le mot recherché tel quel et non pas ses variantes
Commentaire:
On cherche le mot homme et non pas hommes.
Commande:
macbook-de-admin:tal-exo admi$ egrep -wn "homme" d89.txt
Résultat:
4:Les Représentants du Peuple Français, constitués en Assemblée nationale, considérant que l’ignorance, l’oubli ou le mépris des droits de l’homme sont les seules causes des malheurs publics et de la corruption des Gouvernements, ont résolu d’exposer, dans une Déclaration solennelle, les droits naturels, inaliénables et sacrés de l’homme, afin que cette Déclaration, constamment présente à tous les membres du corps social, leur rappelle sans cesse leurs droits et leurs devoirs ; afin que les actes du pouvoir législatif, et ceux du pouvoir exécutif pouvant être à chaque instant comparés avec le but de toute institution politique, en soient plus respectés ; afin que les réclamations des citoyens, fondées désormais sur des principes simples et incontestables, tournent toujours au maintien de la Constitution, et au bonheur de tous. En conséquence, l’Assemblée nationale reconnaît et déclare, en présence et sous les auspices de l’Être Suprême, les droits suivants de l’homme et du citoyen.
12:Le but de toute association politique est la conservation des droits naturels et imprescriptibles de l’homme. Ces droits sont la liberté, la propriété, la sûreté et la résistance à l’oppression.
20:La liberté consiste à pouvoir faire tout ce qui ne nuit pas à autrui : ainsi l’exercice des droits naturels de chaque homme n’a de bornes que celles qui assurent aux autres Membres de la Société, la jouissance de ces mêmes droits. Ces bornes ne peuvent être déterminées que par la Loi.
32:Nul homme ne peut être accusé, arrêté, ni détenu que dans les cas déterminés par la Loi, et selon les formes qu’elle a prescrites. Ceux qui sollicitent, expédient, exécutent ou font exécuter des ordres arbitraires, doivent être punis ; mais tout Citoyen appelé ou saisi en vertu de la Loi doit obéir à l’instant : il se rend coupable par la résistance.
40:Tout homme étant présumé innocent jusqu’à ce qu’il ait été déclaré coupable, s’il est jugé indispensable de l’arrêter, toute rigueur qui ne serait pas nécessaire pour s’assurer de sa personne, doit être sévèrement réprimée par la Loi.
Commentaire:
On a bien les lignes qui contiennent le mot homme et non pas hommes (comme par exemple à la ligne 8).
- Chercher plusieurs mots à la fois en faisant apparaître le numéro des lignes
Commentaire:
On utlise l’option -e de egrep pour faire apparaître plusieurs mots à la fois.
On cherche par exemple, les mots homme et citoyen.
Commande:
macbook-de-admin:tal-exo admi$ egrep -n -e "homme" -e "citoyen" d89.txt
Résultat:
4:Les Représentants du Peuple Français, constitués en Assemblée nationale, considérant que l’ignorance, l’oubli ou le mépris des droits de l’homme sont les seules causes des malheurs publics et de la corruption des Gouvernements, ont résolu d’exposer, dans une Déclaration solennelle, les droits naturels, inaliénables et sacrés de l’homme, afin que cette Déclaration, constamment présente à tous les membres du corps social, leur rappelle sans cesse leurs droits et leurs devoirs ; afin que les actes du pouvoir législatif, et ceux du pouvoir exécutif pouvant être à chaque instant comparés avec le but de toute institution politique, en soient plus respectés ; afin que les réclamations des citoyens, fondées désormais sur des principes simples et incontestables, tournent toujours au maintien de la Constitution, et au bonheur de tous. En conséquence, l’Assemblée nationale reconnaît et déclare, en présence et sous les auspices de l’Être Suprême, les droits suivants de l’homme et du citoyen.
8:Les hommes naissent et demeurent libres et égaux en droits. Les distinctions sociales ne peuvent être fondées que sur l’utilité commune.
12:Le but de toute association politique est la conservation des droits naturels et imprescriptibles de l’homme. Ces droits sont la liberté, la propriété, la sûreté et la résistance à l’oppression.
20:La liberté consiste à pouvoir faire tout ce qui ne nuit pas à autrui : ainsi l’exercice des droits naturels de chaque homme n’a de bornes que celles qui assurent aux autres Membres de la Société, la jouissance de ces mêmes droits. Ces bornes ne peuvent être déterminées que par la Loi.
32:Nul homme ne peut être accusé, arrêté, ni détenu que dans les cas déterminés par la Loi, et selon les formes qu’elle a prescrites. Ceux qui sollicitent, expédient, exécutent ou font exécuter des ordres arbitraires, doivent être punis ; mais tout Citoyen appelé ou saisi en vertu de la Loi doit obéir à l’instant : il se rend coupable par la résistance.
40:Tout homme étant présumé innocent jusqu’à ce qu’il ait été déclaré coupable, s’il est jugé indispensable de l’arrêter, toute rigueur qui ne serait pas nécessaire pour s’assurer de sa personne, doit être sévèrement réprimée par la Loi.
Exercice précédent
Exercice suivant