Wildcard in ls

Hi Experts,

I want to use ls in the below form:

ls -l *.{txt,TXT} (working fine)

but when i am declaring a variable,

VAR="*.{txt,TXT}"

ls -l $VAR is not working. Please help.

Thanks.

eval ls -l "$VAR"

That's odd that the {} wouldn't be evaluated when used that way, since * definitely is, but it does look like you need eval.

Thanks all for your help.

Even this is working fine eval ls -l $VAR.. without quotes.

bash performs brace expansion before parameter expansion, so the braces in $VAR aren't special.

However, this would work in ksh, since it performs brace expansion after paremter expansion (just before pathname expansion).

Regards,
Alister