• [^] # Re: exclure grep

    Posté par . En réponse au message Programmation script shell ksh unix. Évalué à 5.

    ben vous pouvez avoir tous les deux raison !

    En fait le shell interprète bien les crochets et si dans le répertoire courant il existe un fichier grep, alors le shell qui va remplacer la chaîne gre[p] par grep et, à ce moment-là, les crochets ne servent plus à rien.

    Pour bien comprendre, voici un exemple :
    $ touch grep
    $ echo gre[p]
    grep
    $ ps -ef | grep gre[p]
    toto 19592 18514 0 17:47 pts/5 00:00:00 grep grep
    $ ps -ef | grep "gre[p]"
    jjdoti 19625 18514 0 17:51 pts/5 00:00:00 grep gre[p]
    $ rm grep
    $ echo gre[p]
    gre[p]
    $ ps -ef | grep gre[p]
    $ ps -ef | grep gre[p]
    toto 19601 18514 0 17:48 pts/5 00:00:00 grep gre[p]

    Moralité : il faut mettre des quottes autour du motif à passer à grep.

    A+
    JJD