Funcionou só no modo compatibilidade 3.1: $ shopt -s compat31 $ IFS="br0 eth0 lo tap0 tap1 tap2 tap3 vmnet8"; set -x; if [[ $IFS =~ "\<eth0" ]]; then echo ok; else echo nok; fi ok
E com a ER do lado direito. Valeu a dica das aspas. OBS: o string $IFS é o que testar, não a ER... Tem como fazer isso no bash 3.2 ???? abraços, Alain Eri Ramos Bastos escreveu: > O script abaixo funciona. A grande diferença foi não colocar as aspas > de novo na hora de comparar a regex. > > #!/bin/bash > > BATATA="((br|eth|tap)0|lo|tap[1-3]|vmnet8)" > if [[ "\<eth0" =~ $BATATA ]] > then > echo ok > else > echo nok > fi > > > []'s > Eri > > > 2009/6/2 Alain M. <[email protected]>: >> estou com problema para fazer um if em bash usando regex. >> >> comando: >> # IFS="br0 eth0 lo tap0 tap1 tap2 tap3 vmnet8"; set -x; if [[ "$IFS" =~ >> "\<eth0" ]]; then echo ok; else echo nok; fi >> >> retorna nok. o problema é com p \< que deveria casar o começo da palavra >> mas não que funcionar. >> >> usanoo: GNU bash, version 3.2.39(1) (Ubuntu 8.06) >> >> agradeço qq esclarecimento, >> Alain >> >> >> >> ------------------------------------ >> >> --------------------------------------------------------------------- >> Esta lista não admite a abordagem de outras liguagens de programação, como >> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio >> aviso. >> --------------------------------------------------------------------- >> Sair da lista: [email protected] >> --------------------------------------------------------------------- >> Esta lista é moderada de acordo com o previsto em >> http://www.listas-discussao.cjb.net >> --------------------------------------------------------------------- >> Servidor Newsgroup da lista: news.gmane.org >> Grupo: gmane.org.user-groups.programming.shell.brazil >> >> Links do Yahoo! Grupos >> >> >> > > > ------------------------------------ > > --------------------------------------------------------------------- > Esta lista não admite a abordagem de outras liguagens de programação, como > perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio > aviso. > --------------------------------------------------------------------- > Sair da lista: [email protected] > --------------------------------------------------------------------- > Esta lista é moderada de acordo com o previsto em > http://www.listas-discussao.cjb.net > --------------------------------------------------------------------- > Servidor Newsgroup da lista: news.gmane.org > Grupo: gmane.org.user-groups.programming.shell.brazil > > Links do Yahoo! Grupos > > > >
