avi3000 a écrit :
grep ne recherche pas une chaîne de caractères dans une ligne, mais dans un fichier de une ou plusieurs lignes.
echo $PATH peut-être considéré comme un fichier d'une ligne non ?
D'accord avec la définition mais pas entièrement avec le résultat obtenu. Sans paramètre grep t'affichera les lignes où il a trouvé la chaîne de caractères. Avec -c il te donnera le nombre de lignes où il a trouvé la chaîne. Et si cette chaîne est seulement dans une ligne mais plusieurs fois il ne donnera comme valeur que 1.
S'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
avi3000 a écrit :
grep ne recherche pas une chaîne de caractères dans une ligne, mais dans un fichier de une ou plusieurs lignes.
echo $PATH peut-être considéré comme un fichier d'une ligne non ?
D'accord avec la définition mais pas entièrement avec le résultat obtenu. Sans paramètre grep t'affichera les lignes où il a trouvé la chaîne de caractères.
grep lit la sortie standard si aucun fichier ne lui est fourni (bon après on pinaillera ou pas avec le «tout est fichier» sous UNIX et Linux).
Mais l'emploi des motifs avec les variables comme présenté par avi3000 dès que c'est possible est une bonne pratique. Autrement grep sera coûteux en fonction de l'expression régulière demandée (et ça, ben... pas possible d'y couper).
«The following statement is not true. The previous statement is true.»