Bonjour,
ce test , sous les 2 formes ci-dessous ne fait pas ce que je voudrais, à savoir renvoyer vrai si la valeur dans la variable commence par un slash (le chemin est donné à partir de la racine), il échoue toujours.
if [[ "$CheminInitial" =~ "^/" ]]
if [[ "$CheminInitial" =~ "^\/" ]]
La question est donc : comment indiquer ce slash initial au test ?
merci
Bonjour
michel@deb114x:~$ maVar="/racine/blabla"
michel@deb114x:~$ [[ $maVar =~ ^/ ]] && echo "OK" || echo "ko"
OK
michel@deb114x:~$ maVar="cheminRelatif/blabla"
michel@deb114x:~$ maVar="cheminRelatif/blabla"
michel@deb114x:~$ [[ $maVar =~ ^/ ]] && echo "OK" || echo "ko"
ko
michel@deb114x:~$
michel@deb114x:~$ maVar="/racine/blabla"
michel@deb114x:~$ maReg='^/'
michel@deb114x:~$ [[ $maVar =~ $maReg ]] && echo "OK" || echo "ko"
OK
michel@deb114x:~$
michel@deb114x:~$ maVar="cheminRelatif/blabla"
michel@deb114x:~$ maReg='^/'
michel@deb114x:~$ [[ $maVar =~ $maReg ]] && echo "OK" || echo "ko"
ko
michel@deb114x:~$
Merci beaucoup,
c’était bien la présence des « guillemets » qui était fautive.
J’ai corrigé mon précédent message, même si c’était tombé en marche
la regex n’était pas correcte.
et moi la faute de français 
En fait, non, j’ai dû me mélanger les pinceaux dans mes tests :
ce n’était pas la peine d’entourer le / par des [ ]