2012-08-15 20:46:33 +0000 2012-08-15 20:46:33 +0000
58
58

如何chown/chmod当前目录中的所有文件?

我想改变当前目录中的一些文件(和目录)的所有权和权限。我试过这样做:

chown username:groupname .

….我以为它会影响到当前目录中的所有文件,但却只影响到我所在的目录(这与我想做的相反)。我想在不影响当前目录的情况下对所有文件进行修改,

如何才能对当前目录中的所有文件进行chown和chmod?

答案 (3)

98
98
98
2012-08-15 20:48:16 +0000

你想用chown username:groupname *,让shell将*扩展到当前目录的内容。你也可以使用chown -R username:groupname .,这样会改变当前目录下所有文件/文件夹的权限,但不会改变文件夹的内容。这个样式和第一个样式是我发现自己最常使用的。

9
9
9
2012-08-15 20:48:05 +0000

我想你要的是:

chown username:groupname *

如果你也想递归改变子目录,你需要-R-r已被废弃)开关:

chown -R username:groupname *

0
0
0
2019-03-15 14:44:38 +0000

如果你是超级用户的话,chown就很好用。我曾经遇到过一个问题,就是别人在我的目录中运行了make,现在拥有了一些我无法修改的文件。以下是我的解决方法,它可以处理文件和目录,虽然如果它不能删除这些目录,它就会留下后缀为.mkmeowner的目录。

  • 下面的脚本改变了传递给它的文件和目录的所有权,试图通过对每个不属于当前用户的目录或文件做一个新的副本,删除(或尝试 删除)原来的文件,并适当地重命名,来解决权限问题。我不使用下划线,因为打字很麻烦。

例子:

% mkmeowner .

% mkmeowner dirpath1 dirpath2
  • 它需要以下脚本mkmeownerone在你的路径中。