我编写了以下代码片段,以有选择地从共同祖先中删除多个子目录。它不起作用,但我不知道为什么。
for x in *;
do rm -r "$x/foo/bar/{a*,b,c,d,g*}";
done
当我运行它时,我收到“没有这样的文件或目录”错误,即使我知道这些文件夹存在。
答案1
双引号内的括号不会扩展。尝试这个:
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
当我运行它时,我收到“没有这样的文件或目录”错误,即使我知道这些文件夹存在。
双引号内的括号不会扩展。尝试这个:
for x in *;
do rm -r "$x/foo/bar/"{a*,b,c,d,g*};
done