转移权限用户->组/其他

转移权限用户->组/其他

如何转移写入/执行和执行权限所有者团体其他, 分别?

我有一些想要搬到的图书馆选择并将所有权设置为。不幸的是,权限有点混乱团体其他,这就产生了一个问题团体其他无法使用库、调用可执行文件和读取文件。

我想递归地设置写入/执行和执行的权限团体其他分别。例如,我想要这个:

-rw-r--r--.   1 root root    4464 Jan 11 23:58 CPackSourceConfig.cmake
-rwxr--r--.   9 root root   28672 Jan 11 23:58 executable
drwxr--r--.   9 root root   28672 Jan 11 23:58 Source

是这样的:

-rw-rw-r--.   1 root root    4464 Jan 11 23:58 CPackSourceConfig.cmake
-rwxrwxr-x.   9 root root   28672 Jan 11 23:58 executable
drwxrwxr-x.   9 root root   28672 Jan 11 23:58 Source

考虑到有相当多的文件/文件夹(递归),我该如何最好地做到这一点?

答案1

find 和 chmod 的某种组合应该可以解决问题:

  • 所有目录:

    find /opt -type d -exec chmod 775 {} \;
    
  • 所有“可执行”文件:

    find /opt -type f -perm -0500 -exec chmod 775 {} \;
    
  • 所有其他文件:

    find /opt -type f -not -perm -0500 -exec chmod 664 {} \;
    

相关内容