Cmde recherche de caracteres dans 1 chaine ?

Résolu/Fermé
Willy13 Messages postés 8 Date d'inscription mercredi 2 avril 2008 Statut Membre Dernière intervention 17 avril 2008 - 2 avril 2008 à 14:53
Willy13 Messages postés 8 Date d'inscription mercredi 2 avril 2008 Statut Membre Dernière intervention 17 avril 2008 - 3 avril 2008 à 11:04
Bonjour,

Je cherche une commande unix qui teste l'existence d'une chaine de caracteres dans une autre chaine.
Cette commande existe -t-elle ? ou comment faire celà autrement ?

Exemple :
j'ai une variable qui contient une phrase et je veux savoir s'il y a un mot particulier dans cette phrase.

Toute idée sera appréciable. Merci.
A voir également:

2 réponses

lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 569
2 avril 2008 à 14:57
Salut,

par exemple
root@debian:~# echo "je veux savoir s'il y a un mot particulier dans cette phrase" | grep -o 'mot' >/dev/null && echo 'mot existe dans la phrase'
mot existe dans la phrase
root@debian:~#
0
Willy13 Messages postés 8 Date d'inscription mercredi 2 avril 2008 Statut Membre Dernière intervention 17 avril 2008
2 avril 2008 à 15:34
Merci de ta réponse rapide :), mais la commande ne fonctionne pas car l'option -o n'est pas reconnue.

J'ai oublié de préciser que j'utilisais Solaris.
0
Willy13 Messages postés 8 Date d'inscription mercredi 2 avril 2008 Statut Membre Dernière intervention 17 avril 2008
2 avril 2008 à 15:45
A quoi sert l'option grep -o ?

Il se peut qu'il y aiit une autre option faisant la même chose sous Solaris.

A priori, voilà les options que j'ai :
NAME
grep - search a file for a pattern

SYNOPSIS
/usr/bin/grep [-bchilnsvw] limited-regular-expression
[filename...]

/usr/xpg4/bin/grep [-E | -F] [-c | -l | -q] [-bhinsvwx]
-e pattern_list... [-f pattern_file]... [file...]

/usr/xpg4/bin/grep [-E | -F] [-c | -l | -q] [-bhinsvwx]
[-e pattern_list...] -f pattern_file... [file...]

/usr/xpg4/bin/grep [-E | -F] [-c | -l | -q] [-bhinsvwx]
pattern [file...]
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 896
2 avril 2008 à 14:58
Salut,
grep 'mot_a_chercher' <<< $variable
Voir aussi recherche char dans variable
;-))
0
Willy13 Messages postés 8 Date d'inscription mercredi 2 avril 2008 Statut Membre Dernière intervention 17 avril 2008
2 avril 2008 à 15:54
Merci pour ta réponse jicipy,

Mais j'ai essayé ta solution et j'ai un pb avec les 3 "<<<" ...

./mon script.sh: syntax error at line 21: `<' unexpected

Je suis sous Solaris, c'est peut-être la raison.
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 896 > Willy13 Messages postés 8 Date d'inscription mercredi 2 avril 2008 Statut Membre Dernière intervention 17 avril 2008
2 avril 2008 à 15:58
echo $var | grep 'mot_a_chercher'
0
Willy13 Messages postés 8 Date d'inscription mercredi 2 avril 2008 Statut Membre Dernière intervention 17 avril 2008 > jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020
3 avril 2008 à 11:04
Ca marche !
Merci beaucoup ! :)

Bonne journée.
0