Introduction
grep est un programme en ligne de commande initialement écrit pour Unix utilisant l'algorithme d'Aho-Corasick. Le comportement habituel de grep est de recevoir une expression rationnelle en ligne de commande, de lire les données sur l'entrée standard ou dans une liste de fichiers, et d'écrire les lignes qui contiennent des correspondances avec l'expression rationnelle sur la sortie standard. Cette commande est très répandue sous tous les systèmes Linux/Unix.
grep est un filtre, ce qui lui permet d'être combiné avec d'autres commandes, sous la forme d'un pipeline.
Ses performances et sa facilité d'emploi en font un outil adapté pour rechercher efficacement des chaines dans une arborescence complexe de fichiers. Il est par exemple utilisé pour trouver toutes les occurrences du nom d'une fonction dans le code source d'un programme ou de chaines dans des fichiers de configuration. Malgré la présence de fonctionnalités similaires dans de nombreux programmes, comme emacs ou vi, de nombreux utilisateurs préfèrent utiliser directement grep, même lorsqu'ils sont en train d'utiliser ces programmes.