Mi shell bash no interactivo tiene extglob off
. Me gustaría activarlo en la declaración inmediatamente antes de un comando, pero he notado que cuando shopt -s extglob
está dentro de un if .. then .. else
bloque, de alguna manera no se registra.
La siguiente extglob dependiente del comando no es válido: syntax error near unexpected token '('
.
¿Dónde se extglob
puede establecer y por qué hay una restricción? ¿Esto se aplica a otras opciones? ... GNU bash 4.1.5
Esto funciona:
shopt -s extglob
if true ;then
touch a.bcd; ls a.@(bcd)
fi
Esto falla:
if true ;then
shopt -s extglob
touch a.bcd; ls a.@(bcd)
fi
... line 17: syntax error near unexpected token `('
... line 17: `touch a.bcd; ls a.@(bcd)'
alias e=echo; e hello
no funcionar: la definición de alias solo tiene lugar en la próxima línea nueva.