Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 26/05/2016, à 10:15

abitbold

[RESOLU] [Script] If et chaine de caractere

Bonjour,

J'aimerais savoir comment faire un test avec un IF pour savoir si une chaine de caractere se trouve dans un fichier.
Par exemple, je lance mon script au démarrage pour effectuer des tâches, mais avant toute chose, je souhaite savoir si le fichier que je compte copié, a déjà été modifié avec le nom de l'utilisateur qui lance le script au démarrage de la session.

Comment faire ?

Grep semble être la solution pour recherche une chaine de caractère dans un fichier et $USER est pris en compte, mais je ne vois pas comment mettre tout ca en ordre pour que cela fonctionne.
Mon IF est :

if [ toto = "toto" ] ; then
  echo "égale"
else
  echo "pas égale"
fi

Dernière modification par abitbold (Le 26/05/2016, à 14:01)

Hors ligne

#2 Le 26/05/2016, à 10:39

pingouinux

Re : [RESOLU] [Script] If et chaine de caractere

Bonjour,

if grep -q la_chaine fichier; then
   echo "dedans"
else
   echo "pas dedans"
fi

Ajouté :
Ou bien

grep -q la_chaine fichier && echo "dedans" || echo "pas dedans"

Dernière modification par pingouinux (Le 26/05/2016, à 10:42)

Hors ligne

#3 Le 26/05/2016, à 14:00

abitbold

Re : [RESOLU] [Script] If et chaine de caractere

Nikel, curieux que les [] fonctionne seul, mais pas avec grep ....

Hors ligne

#4 Le 26/05/2016, à 15:11

pingouinux

Re : [RESOLU] [Script] If et chaine de caractere

Tu pourrais aussi faire ceci, mais c'est quand même plus laborieux.

[ "$(grep "la_chaine" fichier)" ] && echo "dedans" || echo "pas dedans"

Hors ligne