如何对变量进行大括号扩展?

Joh*_*orn 2 bash shell brace-expansion

请考虑以下脚本:

#! /bin/bash -e

echo {foo,bar}
EX={foo,bar}
echo ${EX}
Run Code Online (Sandbox Code Playgroud)

该脚本的输出是:

foo bar
{foo,bar}
Run Code Online (Sandbox Code Playgroud)

echo想要执行大括号扩展的命令${EX}.因此,我希望看到一个输出

foo bar
foo bar
Run Code Online (Sandbox Code Playgroud)

我想创建一个脚本,用户可以在其中提供带有大括号的路径,其中复制了每个扩展版本.

像这样的东西:

#! /bin/bash -e

$SOURCES=$1
$TARGET=$2

cp -r ${SOURCES} ${TARGET}
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

Jah*_*hid 6

这是一种方式:

ex=({foo,bar,baz})
echo ${ex[@]}
foo bar baz
Run Code Online (Sandbox Code Playgroud)