La mia shell bash non interattiva ha extglob off
. Vorrei attivarlo nell'istruzione immediatamente prima di un comando, ma ho notato che quando si shopt -s extglob
trova all'interno di un if .. then .. else
blocco, in qualche modo non si registra.
Il seguente extglob-dipendente comando non è valido: syntax error near unexpected token '('
.
Dove può extglob
essere impostato e perché esiste una restrizione? Questo vale per altre opzioni? ... GNU bash 4.1.5
Questo funziona:
shopt -s extglob
if true ;then
touch a.bcd; ls a.@(bcd)
fi
Questo fallisce:
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)'