我想遍历所有与表单模式匹配的文件
for file in {prefix1, prefix2, ...}*{postfix1, postfix2, ...}; do
如何以编程方式替换{prefix1, prefix2, ...}
为包含这些名称的列表?我尝试过$prefix*$postfix
,prefix={prefix1,prefix2,...}
但是它不起作用,因为括号扩展是在变量扩展之前完成的。
如果前缀/后缀模式不包含空格,则可以使用扩展的globlob:
shopt -s extglob
prefix='@(prefix1|prefix2|prefix3)'
suffix='@(suffix1|suffix2|suffix3)'
echo $prefix*$suffix
for file in $prefix*$suffix; do
#...
done
IFS
正确设置了变量,则可以处理空格本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句