0

我被要求让我拥有的所有 HTML 文件都具有以下权限:RW-RW-R--(所以我相信是 664,目前它们是 644)。

所以我运行了这个:

$ chmod -R 664 *.html

它只更改了该文件夹中的 html 文件(我去了一个子文件夹并检查了那里的权限,它们没有改变)。我需要更改我拥有的所有文件,所以我从顶级文件夹运行它。

我的命令错了吗?是服务器设置吗?我相信我以前做过这个,但我现在无法让它工作。

4

1 回答 1

2

使用命令:

chmod -R 664 *.html

shell 将扩展给定的文件路径 ( *.html) 并仅对这些路径进行操作。那将是当前目录中的所有 html 文件。除非您有一个与该模式匹配的目录,否则它不会遍历目录,在这种情况下,该文件夹下的所有内容都将被更改。

要做你想做的事,你需要使用find

find . -name "*.html" -exec chmod 664 {} \;

如果您要更改的 html 文件只有一层或两层,您可以执行以下操作:

chmod 664 *.html */*.html */*/*.html

等但find将是一般的解决方案。

于 2013-08-16T17:41:20.550 回答