> Le 22 déc. 2017 à 09:19, Jean-Marc <jean-m...@6jf.be> a écrit : > > Thu, 21 Dec 2017 18:13:19 +0100 > Daniel Caillibaud <m...@lairdutemps.org> écrivait : > >> Pourquoi ? >> >> $ [[ 'abcd' =~ '^ab' ]] && echo ok || echo KO >> KO >> >> $ [[ 'abcd' =~ 'cd$' ]] && echo ok || echo KO >> KO >> >> ?? > > Parce qu'entre guillemets, les caractères ^ et $ sont considérés comme des > caractères normaux. > > $ set -x > > $ [[ 'abcd' =~ '^ab' ]] && echo ok || echo KO > + [[ abcd =~ \^ab ]] > + echo KO > KO > > $ [[ 'abcd' =~ ^'ab' ]] && echo ok || echo KO > + [[ abcd =~ ^ab ]] > + echo ok > ok > > $ [[ 'abcd' =~ 'cd$' ]] && echo ok || echo KO > + [[ abcd =~ cd\$ ]] > + echo KO > KO > > $ [[ 'abcd' =~ 'cd'$ ]] && echo ok || echo KO > + [[ abcd =~ cd$ ]] > + echo ok > ok > > un petit "set -x" fonctionne bien, même dans une session interactive. > > Joyeux Noël !!!
Cette explication avec appuis de l’exemple est effectivement beaucoup plus claire que ma réponse. Effectivement l’utilisation du « set -x » est une excellente façon de voir ce qui se passe. Merci -- Pierre Malard « Si, comme le disait le général de Gaulle, la France n'avait pas été la France... on peut logiquement penser que tous les français auraient été des étrangers » ;-) Pierre Dac |\ _,,,---,,_ /,`.-'`' -. ;-;;,_ |,4- ) )-,_. ,\ ( `'-' '---''(_/--' `-'\_) πr perl -e '$_=q#: 3|\ 5_,3-3,2_: 3/,`.'"'"'`'"'"' 5-. ;-;;,_: |,A- ) )-,_. ,\ ( `'"'"'-'"'"': '"'"'-3'"'"'2(_/--'"'"' `-'"'"'\_): 24πr::#;y#:#\n#;s#(\D)(\d+)#$1x$2#ge;print' - --> Ce message n’engage que son auteur <--
signature.asc
Description: Message signed with OpenPGP