Comment puis-je grep pour une valeur d'une variable d'environnement?

J'ai essayé de grep exacte shell 'variable' a l'aide des limites de mots,

grep "\<$variable\>" file.txt

mais n'ont pas réussi; j'ai tout essayé mais je n'ai pas réussi.

En fait, je suis en invoquant grep à partir d'un script Perl:

$attrval=`/usr/bin/grep "\<$_[0]\>" $upgradetmpdir/fullConfiguration.txt`

$_[0] et $upgradetmpdir/fullConfiguration.txt contient quelques matching "texte".

Mais $attrval est vide après l'opération.

"<" et ">" ne sont pas les limites de mot pour tout grep, je suis familier avec. Le système d'exploitation qu'est-ce? Êtes-vous intéressé à littéralement "$variable" ou l'expansion de celui-ci? Vous tagged cette "coquille" et "perl"; qui est-il?
J'ai mis à jour la question, avoir un coup d'oeil.
Vous avez à vous soucier de combien de fois les barres obliques inverses sont interprétées. Perl est de dépouiller les barres obliques inverses; l'argument que "grep" voit ne contient pas les barres obliques inverses. Vous auriez besoin de doubler les barres obliques inverses dans le code Perl pour obtenir l'effet.
Aussi, il serait pratiquement aussi facile à faire que tous en Perl que le décrochage en shell. Je suis assez sûr qu'il y a un module qui permettrait de le faire automatiquement: f'rinstance search.cpan.org/~mneylon/Fichier-Grep-0.02

OriginalL'auteur Gaurav | 2010-02-16