扩展一个 glob 字符串并将结果参数传递给 GNU parallel

expand a glob string and pass resulting arguments to GNU parallel

在 bash 脚本中,我有一个带有 glob 字符的字符串,它会扩展为我需要在 bash 中并行处理的多个脚本 paths/names。

如何将生成的脚本名称传递给并行执行?

我尝试了以下方法,其中 $string="./script*.sh"

(echo $string) | parallel

($string) | parallel

没有成功。

我什至试图将它读入一个数组然后构造一串回声但这没有帮助

read -a scripts <<< "$string" (${script[*]) | parallel

试试这个:

string=./script*.sh

# expand * here
echo $string | tr " " "\n" | parallel

或者试试这个:

parallel ::: ./script*.sh

ls | grep script | parallel
(echo $string) | parallel eval