在zsh中用括号和变量表示

我编写了以下代码片段,从共同的祖先中有选择地删除了几个子目录.它不起作用,但我不知道为什么.

for x in *; 
do rm -r "$x/foo/bar/{a*,b,c,d,g*}"; 
done

当我运行它时,我得到“没有这样的文件或目录”错误,即使我知道文件夹存在.

最佳答案
括号不会在双引号内扩展.试试这个:

for x in *; 
do rm -r "$x/foo/bar/"{a*,b,c,d,g*}; 
done

转载注明原文:在zsh中用括号和变量表示 - 代码日志