我如何更改文件夹及其子文件/子文件夹的权限?

69 浏览
0 Comments

我如何更改文件夹及其子文件/子文件夹的权限?

关闭。 这个问题与编程或软件开发无关。当前不接受答案。


 

这个问题似乎不涉及特定的编程问题、软件算法或主要供程序员使用的软件工具。如果您认为这个问题在另一个 Stack Exchange 网站上是相关的,您可以留下一条评论,解释这个问题可能在哪里可以得到回答。

已锁定。 这个问题及其答案已被锁定,因为它是不相关的,但具有历史意义。当前不接受新的答案或交互作用。

如何更改一个文件夹及其所有子文件夹和文件的权限?

这仅适用于/opt/lampp/htdocs文件夹本身,而不是它的内容:

chmod 775 /opt/lampp/htdocs

我该如何为/opt/lampp/htdocs文件夹的当前所有内容设置chmod 755,并在未来自动应用于其下新文件夹/文件?

admin 更改状态以发布 2023年5月21日
0
0 Comments

检查-R选项

chmod -R

未来,您可以先检查手册页面以节省很多时间:

man 

因此,在这种情况下:

man chmod

0
0 Comments

其他回答都是正确的,chmod -R 755 会将这些权限设置为树中所有文件和子文件夹。但是,为什么你想要这样做呢?对于目录来说这可能是有意义的,但是为什么要在所有文件上设置执行位呢?

我猜你真正想做的是将目录设置为 755,然后要么不做任何改变或将文件设置为 644。对于这个问题,可以使用find 命令。例如:

将所有目录更改为 755 (drwxr-xr-x):

find /opt/lampp/htdocs -type d -exec chmod 755 {} \;

将所有文件更改为 644 (-rw-r--r--):

find /opt/lampp/htdocs -type f -exec chmod 644 {} \;

一些解释:(感谢 @tobbez

  • chmod 755 {} 指定将在每个目录上执行的命令
  • chmod 644 {} 指定将在每个文件上执行的命令
  • {} 被路径替换
  • ; 分号告诉find,这是它应该执行的命令的结尾
  • \; 分号被转义了,否则它将被shell解释而不是find
0