将文件的所有者权限复制到组权限

如何将文件的用户/所有者权限复制到组的权限?

例如,如果权限是755我希望他们成为775。

澄清:755 – > 775 123 – > 113 abc – > aac

奖金,如果我可以对目录中的所有文件recursion地做到这一点。

(也就是说,对于每个文件,拥有者权限都被复制到组权限中,每个文件可能具有不同的权限。)

    您可以使用g=u使群组perms与用户perms相同

     ls -l file -rw------- 1 user users 0 Jun 27 13:47 file chmod g=u file ls -l file -rw-rw---- 1 user users 0 Jun 27 13:47 file 

    并recursion地

     chmod -R g=u * 

    或者用于某些文件规范

     find /patch/to/change/perms -name '*.txt' -exec chmod g=u {} + 

    chmod manpage是你的朋友。

    正如人们所说,更改文件权限可能是危险的。 伟大的权力是伟大的责任,所有这些shizas。 这是我的答案:

    文件/ usr / bin / otog:

     #!/bin/sh f=$1 p=`stat -c "%a" $f` chmod ${p:0:1}${p:0:1}${p:2:1} $f 

    用法示例:

     find . -exec otog {} \; 

    使用stat来获得数字权限,使用chmod来更改权限。

    PS:请参阅Iain的回答,为更好的方式做这个!

    首先,你需要列出你的权利。

     ls -l /your_directory/ -rwxr-xr-x 1 57 Jul 3 10:13 file1 -rwxr-xr-x 1 57 Jul 3 10:13 file2 

    翻译结果在数值许可使用这个:R = 4,W = 2,X = 1。

    所以在这2个文件的权限是755。

    得到你的权利之后,你必须使用chmod命令来改变你想要的方式:

     chmod 775 /your_directory/ 

    这个命令只会改变目录的权限,而不会改变目录里的文件。

    如果你想改变里面的权利,那么做这个命令:

     chmod 775 /your_directory/ -fR 

    -fR将强制recursion。 (只有在您确定要应用的权利的情况下才可以使用,而且在目录中的文件也是如此)。

    如果您只想更改file1上的权限,则:

     chmod 775 /your_directory/file1 

    而这种cookies崩溃的方式!

    请小心,滥用此命令可能会破坏您的所有操作系统权限并导致故障。 /!\

    ps:看那里找出更多关于chmod的信息。

    希望这会帮助你。