How can I trigger brace expansion inside a script?

2020-04-11 14:01发布

问题:

I'm writing a script which needs to use the shell's brace expansion, but nothing I've tried works. For (a contrived) instance, say I have a variable containing the string

thing{01..02}

and I (obviously) want to expand it to

thing01 thing02  

from inside the script, how can I do that?

(For anyone who assumes this is a duplicate of this other question, please read them more carefully. That question is regarding working from the shell, not a shell script, and doesn't require the ability to expand arbitrary expressions.)

回答1:

$ echo thing{01,02}

thing01 thing02


回答2:

Make sure that braceexpand is turned on with set -o braceexpand.