Expressions rationnelles

Exercices avec grep

  1. Copier le fichier passwd en local pour faire les tests
    cp /etc/passwd .
  2. Chercher les lignes qui contiennent "home"
    grep "home" passwd
  3. Chercher les lignes qui ne contiennent pas "bin"
    grep -v "bin" passwd
  4. Chercher les lignes qui commencent par "bin"
    grep "^bin" passwd
  5. Chercher les lignes qui contiennent "bin et "home"
    grep "bin" passwd | grep "home"
  6. Chercher les lignes qui contiennent un point
    grep "\." passwd
  7. Chercher les lignes qui contiennent au moins 2 "y"
    grep "y.*y" passwd
  8. Chercher les lignes qui contiennent une majuscule dans le premier champ (modifier le fichier passwd pour qu'il en contienne)
    grep "^[[:lower:]]*[[:upper:]]" passwd
  9. Chercher les lignes qui contiennent des champs numériques d'un seul chiffre
    grep ":[[:digit:]]:" passwd
  10. Chercher les lignes qui contiennent le 3ème champ compris entre 1 et 5
    grep "^[[:alnum:]]*:[[:alnum:]]*:[1-5]:" passwd
    grep "^\([[:alnum:]]*:\)\{2\}[1-5]:" passwd (avec les répétitions)
  11. Chercher les lignes qui ont le même login et path
    grep "^\([[:alnum:]]*\)\(:.*\)\{4\}:\(/[[:alnum:]]*\)/\1" passwd
  12. Que fait la commande suivante : grep "o.*o.*o" fich1
    Elle recherche les lignes qui ont au moins 3 "o"
  13. Que fait la commande suivante : grep "^[^_^]" fich1
    Elle recherche les lignes qui commencent par un caractère différent de "_" ou "^"
  14. Que fait la commande suivante : grep "^[[:alnum:]_]*:\*:[1-5]:" fich1
    Elle recherche les lignes qui commencent par un caractère alphanumérique ou "_" puis ":*:" puis un chiffre entre 1 et 5
  15. Que fait la commande suivante : grep "^\([[:alnum:]_]*\):\*:\([[:digit:]]*\):\2" fich1
    Elle recherche les lignes qui ont la mêm
Modifié le: lundi 15 juillet 2013, 23:30