Je veux écrire un script shell Unix qui fera une logique différente s'il y a une chaîne dans une autre chaîne. Par exemple, si je suis dans un certain dossier, branchez-vous. Quelqu'un pourrait-il me dire comment accomplir cela? Si possible, je voudrais faire en sorte que ceci ne soit pas spécifique à la coquille (c'est-à-dire pas seulement bash) mais s'il n'y a pas d'autre moyen que je puisse faire avec cela.Comment savoir si une chaîne contient une autre chaîne dans un script shell Unix?
#!/usr/bin/env sh
if [ "$PWD" contains "String1" ]
then
echo "String1 present"
elif [ "$PWD" contains "String2" ]
then
echo "String2 present"
else
echo "Else"
fi
Je réalise que c'est ancien, mais voici quelques points à noter pour les futurs visiteurs: (1) Il est généralement recommandé de réserver des noms de variables SNAKE_CASE pour les variables internes d'environnement et de shell. (2) La définition de 'CURRENT_DIR' est redondante; vous pouvez simplement utiliser '$ PWD'. – nyuszika7h