如何更改组,不包括目录

我们正在使用AWS S3存储桶,当您试图执行recursionchgrp ,它会无限期地在S3存储桶(基本上)上搅动。 排除目录时可以执行chgrp吗?

您可以使用GNU find的function,不要将目录path放到另一个文件系统中:

 find /some/path -mount -exec chgrp groupname {} + 

答案是使用bash extglob ,并且在这里工作,以及许多其他接受/directory/*表单中的文件指定的Linux函数。

在一个目录中贪婪地改变文件组,同时排除一个目录,是可能的,首先把extglob打开,然后把目录名排除,如下所示:

 shopt -s extglob chgrp /directory/!(exclude) 

完成后,使用-u标志closures该选项。

 shopt -u extglob 

对于一个有用的Stack文章,看看“ 如何在unix / linux shell中进行模式匹配时使用反向或负向通配符?