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

如何在Bash命令行删除不同子目录下的同名文件夹?

删除各子目录下的node_modules文件夹方案

你试的~Projects rm -r */node_modules命令有两处问题:

  1. 路径写法不对,~Projects不是合法路径,正确的用户目录下Projects路径应该是~/Projects(波浪号后要加斜杠);
  2. 要是当前不在Projects目录里,*/node_modules的通配符没法匹配到Projects下的子目录,因为通配符是基于当前工作目录生效的。

下面给你几个可行的解决方法:

方法一:先进入目标目录再操作

直接执行这行命令,先切换到Projects目录再删除所有一级子目录里的node_modules:

cd ~/Projects && rm -r */node_modules

方法二:用绝对路径直接执行

不用切换目录,直接通过绝对路径定位目标,一步到位:

rm -r ~/Projects/*/node_modules

这里~/Projects/*会匹配Projects下所有直接子目录,加上/node_modules就精准指向要删除的文件夹。

方法三:处理深层嵌套的node_modules(可选)

如果之后遇到深层嵌套的node_modules(不只是一级子目录下的),可以用find命令递归查找并删除:

find ~/Projects -name "node_modules" -type d -exec rm -r {} +
  • 简单说明:-name "node_modules"指定要找的文件夹名称,-type d限定只查找目录,-exec rm -r {} +对找到的每个目录执行删除操作。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 16:15:41