如何从当前目录开始递归删除所有“node_modules”目录(或任何目录)的内容,留下一个空文件夹?

如何从当前目录开始递归删除所有“node_modules”目录(或任何目录)的内容,留下一个空文件夹?

假设我有这样的目录结构:

projects/
  project1/
    src/
    node_modules/
      dir1/
      dir2/
      dir3/
      file
  project2/
    node_modules/
      dir4/

从开始projects/我想删除所有目录的内容node_modules/,但我不想删除其node_modules/本身,将其留空,里面没有文件夹或文件。

在上面的示例中,项目、 、 和dir1dir2dir3删除。filedir4

答案1

以下命令将删除路径匹配中的所有文件和目录node_modules

find . -path '*/node_modules/*' -delete

如果您想先检查要删除的内容,请忽略该-delete操作。

相关内容