You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Shell命令递归修改指定目录dodo/tata/rere/tyty/toto/的权限?

仅修改目标目录下所有子目录权限的解决方案

问题分析

你执行chmod -R 777 dodo/tata/rere/tyty/toto/后仅修改了toto目录本身权限,大概率是以下两种情况:

  • toto目录下没有任何子目录或文件,递归操作自然只作用于目录本身;
  • 你实际需求是仅修改toto下的子目录权限,而非所有内容(含文件),但chmod -R会同时修改目录和文件。

针对性解决方案

1. 递归修改toto下所有内容(子目录+文件)的权限

如果需要修改toto目录及其内部所有子目录、文件的权限,确保路径正确的前提下,执行以下命令即可:

chmod -R 777 dodo/tata/rere/tyty/toto

注:路径末尾带不带斜杠/不影响递归效果,若执行后仍仅修改了toto本身,可先通过ls -la dodo/tata/rere/tyty/toto/确认该目录下是否有内容。

2. 仅修改toto下所有子目录的权限(排除文件)

如果只想修改toto内部的所有子目录(包括嵌套的子目录)权限,不改动文件,使用find命令精准匹配目录类型:

find dodo/tata/rere/tyty/toto/ -type d -exec chmod 777 {} +
  • -type d:仅筛选出目录类型的对象;
  • -exec chmod 777 {} +:对所有找到的目录批量执行权限修改,比逐个执行的-exec ... \;效率更高。

注意事项

777权限意味着任何系统用户都能对该目录进行读、写、执行操作,安全性极低,生产环境建议根据实际需求调整为更合理的权限(比如755:所有者可读写执行,其他用户仅读和执行)。

内容的提问来源于stack exchange,提问作者Ochees

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 14:40:01