如何删除node_modules-Windows中的深度嵌套文件夹

Node.js

Tony凯

2020-03-23

尝试删除以下用户创建node_modules目录时npm install

源文件名大于文件系统支持的文件名。尝试移动到路径名称较短的位置,或尝试重命名为较短的名称,然后再尝试执行此操作

我也尝试过shift+ delete,但仍然遇到相同的问题。

第2743篇《如何删除node_modules-Windows中的深度嵌套文件夹》来自Winter(https://github.com/aiyld/aiyld.github.io)的站点

29个回答
村村 2020.03.23

使用cmd转到您的node_modules文件夹所在的路径,并在以下命令中应用

npm install rimraf -g 
rimraf node_modules
泡芙 2020.03.23

您可以根据@ mike-caron答案进行简单的批处理,因此您不必每次都robocopy输入整个命令,而只需输入所选文件夹的路径即可:

@echo off
ECHO What Directory would you like to empty?
ECHO Current path: %cd%
SET /p UserInputPath=Input relative path to directory:
ROBOCOPY /MIR empty_dir %cd%\%UserInputPath% > NUL
PAUSE

在这里,您正在命令中使用名为empty_dir的空目录robocopy该目录必须与批处理文件位于同一目录中才能正常工作。批处理文件完成其工作后,所选目录和empty_dir目录都将为空,以便您将其删除。

我制作了一个简单的批处理文件,该文件创建了空文件夹,并且在robocopy执行命令同时删除了空文件夹和选定的文件夹,因此您唯一需要做的就是输入要删除的选定文件夹的路径。如果您不想安装rimraf之类的东西,这是快速而实用的您可以在这里下载https://github.com/5imun/WinCleaner

Mandy村村 2020.03.23

好的,所以我的问题是我在node_modules中有.bin文件夹,但我无法删除该文件夹,我尝试了所有上述解决方案,但均无效果。

重复的错误是“您无权删除该文件夹或该文件夹已被其他程序使用”。

我发现“我的PC上安装了防病毒软件,这是在不知不觉中使用了node_modules文件夹中的文件”的解决方案。

我已卸载防病毒软件,或者您可以从防病毒设置选项更改权限设置(取决于您使用的防病毒软件)。现在,我可以删除node_modules文件夹。

JimTom 2020.03.23

为多个文件夹提前一点 ...

如果您有一个包含多个“内部版本”的项目文件夹,其中包含“ node_module”。喜欢:

C:/Project/build-1/node_modules
C:/Project/build-2/node_modules
C:/Project/build-3/node_modules
C:/Project/build-4/node_modules

您要删除所有以“ build”开头的文件夹

首先按照上述建议安装nodejsrimraf

然后转到项目路径并运行PowerShell命令

cd  C:/Project/
Get-ChildItem build* | foreach {rimraf -Path $_.FullName}

会花哨的

Gil 2020.03.23

对我有用的是:

  1. 关闭节点管理器控制台
  2. 关闭了您所在的Atom(Visual Studio代码)开发环境。
  3. 然后删除node_modules

    npm install rimraf -g 
    rimraf node_modules
    
伽罗 2020.03.23

尝试了一切,但没有成功。以上所有方法均无济于事。最后,我能够通过VSCode删除。

  1. 只需使用VSCode打开您的根文件夹。
  2. 选择node_modules文件夹并删除。
  3. 利润。(需要few milliseconds删除。)

VSCode-delete.png

阳光番长 2020.03.23

我在Windows 10上,无法删除带有“目录不为空”消息的文件夹。rimrafrm -rf不起作用

将空文本文件复制到每个单个文件夹就可以了-我能够删除完整的node_modules文件夹。

伽罗 2020.03.23

只需使用powershell ..

运行powershell和cd到父文件夹,然后:

rm [yourfolder]

如:

rm node_modules
2020.03.23

并不完全相关,但这是我在搜索类似解决方案时发现的第一篇文章,我认为值得在此处发表。

在尝试安装electron-redux失败后,我遇到了Windows 10上的权限问题,试图删除node_modules文件夹。似乎electronic-redux在我的node_modules中添加了@types,其权限设置不正确。

rimraf无法正常工作,因为它仍然遇到许可问题。

我最终重命名了node_modules,然后进行了简单的删除。

Mandy 2020.03.23

有时,即使您rimraf全局安装,也可以具有本地rimraf依赖关系(SASS通常具有此依赖关系)。在这种情况下,我将运行以下命令:

如果有问题或错误,请按照usagidon的建议执行前2个步骤。

npm uninstall rimraf & rimraf node_modules

这将删除本地rimraf并使用全局的

斯丁前端 2020.03.23

从此MSDN文章的外观看,您现在似乎可以通过更改注册表中的值或通过组策略来绕过Windows 10 v1607(又称为“周年更新”)中的MAX_PATH限制

Tony小胖 2020.03.23

我制作了一个Windows上下文项目来快速删除node_modules或其他文件夹。当Windows由于目录路径中的某些无效字符而不删除文件夹时,我将使用它。

如何安装?

  1. 安装rimraf =>npm install rimraf -g

  2. 创建一个名为的新文件delete.bat,将内容设置如下,然后将其复制到c:\windows\system32\

    delete.bat:

 @ECHO OFF
 ECHO.
 ECHO %CD% 
 ECHO.
 ECHO Are you sure to delete the folder with Rimraf?
 PAUSE
 SET FOLDER=%CD%
 CD /

 rimraf "%FOLDER%"

 rem DEL /F/Q/S "%FOLDER%" > NUL
 rem RMDIR /Q/S "%FOLDER%"

 EXIT
  1. 运行fast-delete.reg文件以导入注册表。

    做完了!

最后结果

猪猪 2020.03.23

我使用的一种解决方案:

(在使用CI环境时,我希望避免安装新的扩展(rimraf)。)

  1. A)将packages.json重命名为其他名称。B)特别是在CI上-安装npm后,我通常会删除文件而不是重命名它,但是如果您需要它,则不必这样做。那是你的选择。
  2. 运行npm init-这将创建一个空packages.json文件(无依赖项)
  3. 运行npm prune-这将使node_modules与-的依赖项部分匹配packages.json-由于步骤#2现在为空。
  4. 如果您选择了#1.A。步骤,删除新创建的packages.json,然后将original重命名packages.json为其原始名称。
Stafan 2020.03.23

太容易了。

只需删除node_modules内的所有文件夹,然后删除实际的node_module文件夹即可。

这对我有用。好运....

乐猪猪 2020.03.23

只需在Windows上运行即可,我尚未在其他操作系统上进行过测试

rm -r node_modules

实际上,您可以使用此方法删除任何文件夹。

rm -r AnyFolderWhichIsNotDeletableFromShiftDeleteOrDelete。

只需打开gitbash移动到文件夹的根目录并运行此命令

希望这会有所帮助。

谢谢,Ajay Kotnala

GO 2020.03.23

在Windows上,我的解决方案是使用rmdir命令

rd /S .\node_modules\

如果第一次失败,请再试一次。还要检查您当前是否正在使用模块(npm run serve或类似模块运行脚本

阿飞 2020.03.23

我只是在PowerShell上我的项目文件夹中执行del node_modules,它将询问您是否要删除它及其子文件夹,只需单击“ Y”就可以了

小卤蛋 2020.03.23
  1. npm install -g remove-node-modules
  2. cd到root和 remove-node-modules
  3. 要么 remove-node-modules path/to/folder

资源:

https://github.com/j-quelly/node-cleanup

老丝 2020.03.23

在Windows上,使用Total Commander所要做的就是选择文件夹,然后单击shift+ delete不要忘记shift钥匙。

凯逆天 2020.03.23

我遇到了类似的问题,由于某些未知原因,RD无法正常工作。

NPM可以摆脱它自己的混乱npm uninstall [module-name]局面,因此,如果对node_modules中的每个目录都这样做,则会摆脱它们。

(对于那些有很多依赖性的人,我将在稍后查找如何批量循环。)

Mandy 2020.03.23

您可以使用Git Bash删除文件夹:

示例: c:\ users \ stu \ projects \ mynodeproject

rm / c / users / stu / projects / mynodeproject -rfd

Stafan路易 2020.03.23

任何文件管理器都可以避免此类问题,例如Far Manager

在此处输入图片说明

逆天L 2020.03.23

试试Visual Studio Code

在尝试了许多解决方案之后,我发现这一解决方案非常简单。只需用Visual代码打开项目并将其删除。UI可能会冻结几秒钟,但肯定会工作。我使用了很多大尺寸的node_modules文件夹进行测试

在此处输入图片说明

谢谢

古一宝儿 2020.03.23

您可以使用Git Bash删除文件夹:

示例: c:\ users \ olefrank \ projects \ mynodeproject

rm -rf / c / users / olefrank / projects / mynodeproject

2020.03.23

在Windows中删除Deep Netsted文件夹,例如node_modules

  1. 选项1

    使用rimrafNPM软件包删除

    • 打开命令提示符,并将目录更改为文件夹所在的 node_modules文件夹。

    • rimraf node_modules

    • 缺少rimraf错误,然后安装

      npm install rimraf -g

    • 安装完成后,运行

      rimraf node_modules

  2. 选项2

    无需安装任何东西即可清理

    • Create a folder with name test in any Drive

      robocopy /MIR c:\test D:\UserData\FolderToDelete > NUL

    • delete the folder test and FolderToDelete as both are empty

Why this is an issue in windows?

One of the deep nested folder structure is node_modules, Windows can’t delete the folder as its name is too long. To solve this, Easy solution, install a node module RimRaf

阳光小哥小小 2020.03.23

我只是通过使用Winrar做到了这一点,这似乎是一个奇怪的解决方案,但效果很好。

  • 右键点击node_modules文件夹
  • 选择Add to archive ...从菜单。
  • Winrar对话框打开
  • 只是检查选项 delete files after archiving
  • 完成后,不要忘记删除node_modules.rar。


[更新]这也适用于7Zip


SamStafan 2020.03.23

由于这是Google的最佳搜索结果,因此这对我有用:

安装RimRaf:

npm install rimraf -g

在项目文件夹中,使用以下命令删除node_modules文件夹:

rimraf node_modules

如果要递归删除:

rimraf .\**\node_modules

[ http://www.nikola-breznjak.com/blog/nodejs/how-to-delete-node_modules-folder-on-windows-machine/ ]

Gil宝儿 2020.03.23

我用GitBash删除了文件夹!

rm -r node_modules

删除所有内容花了一段时间,但对我有用!

猪猪JinJin西里 2020.03.23

在C或D盘上创建一个空文件夹“ test”,并使用以下DOS命令

robocopy /MIR c:\test D:\UserData\FolderToDelete > NUL

完成上述命令后,您的文件夹将为空,现在您可以删除该文件夹。

不用担心您的测试文件夹将始终为空,因此您可以随时将其删除。

问题类别

JavaScript Ckeditor Python Webpack TypeScript Vue.js React.js ExpressJS KoaJS CSS Node.js HTML Django 单元测试 PHP Asp.net jQuery Bootstrap IOS Android