node_modulesを削除する方法-Windowsのネストの深いフォルダー


229

によって作成されたnode_modulesディレクトリを削除しようとするとnpm install

ソースファイル名が、ファイルシステムでサポートされているよりも大きいです。この操作を行う前に、パス名が短い場所に移動するか、名前を短くしてください。

私もshift+ deleteを試しましたが、それでも同じ問題が発生します。


try renaming to shorter name(s) before attempting this operation
SLaks、2015年

3
あなたの提案をありがとう、@ SLaks!私もそれを試したと述べたはずですが、ファイルとディレクトリは非常に多く、C:\ Users \ my_user_name \ projs \ backend \ node_modules \ imagemin \ node_modules \ imagemin-optipng \ node_modules \ optipng-bin \ node_modules \ bin-wrapper \ node_modules \ bin-check \ node_modules \ executable \ node_modules \ meow \ node_modules \ camelcase-keys \ node_modules \ ...そしてそれが続きます。ファイルの名前を手動で変更することは実際的ではありません。プログラムを記述せずに簡単な方法があることを願っています
leoh

1
Webstormはすべて削除できます。
ozzimpact

Long Path Fixerツールを使用して、この「.meteor」フォルダーを正常に削除しました。(long-path-fixer.en.softonic.com
Vu Doan

RUN INSTALL、npm install rimraf -g、RUN DELETE、rimraf node_modules
Balu

回答:


438

これはトップのグーグル結果なので、これは私にとってうまくいったものです:

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/ ]


ここで機能しない:「エラー:ENOTEMPTY、ディレクトリが空ではありません」。提供されたリンクが機能していません!
olefrank

7
私はブログ投稿の著者です。@olefrank:これは、フォルダー全体(node_modulesだけでなく)を削除しようとした場合や、エクスプローラーウィンドウでフォルダーを開いた場合にも発生する傾向があります。ウサギドン、元のソースをリンクしてくれてありがとう。
ニコラ

2
NodeJSがない場合、またはNodeJSをアンインストールした後でNodeJSのグローバルモジュールを削除しようとしている場合(つまり、robocopyを使用する必要があった理由)
Zorgatone

1
質問をもう少し具体的にするために、ここに2セントを追加します。:あなたはこのように(グロブパターンを使用して)再帰的にすべてのnode_modulesフォルダを削除することができますrimraf .\**\node_modules
Artif3x

1
@ Artif3xの表彰は、ベストアンサーアルバムとしてマークする必要があります。再帰的に削除するためのヒントをありがとう:-)
Juan Stoppa '24

111

Winrarを使用してこれを行っただけですが、これは奇妙な解決策のように見えるかもしれませんが、非常にうまく機能しています。

  • node_modulesフォルダを右クリック
  • Add to archive ...メニューから選択します。
  • Winrarダイアログが開きます
  • オプションを確認してください delete files after archiving
  • 完了したら、必ずnode_modules.rarを削除してください。


[更新]これは7Zipでも動作します



7
これは卑劣です!+1 robocopyを使用しているようですが、これは新しいnpmなどで修正されているようです。
erp '15年

1
@ChrisS 7Zipでどのように動作しますか?特にGUIを使用する場合!
ベノス2018

4
2016年(特に2018年)には、一連のファイルを削除するのにこれほど賢い必要はありません。
webelo 2018年

73

インストールせずにDOSコマンドを使用してのみ削除:

CまたはDドライブに空のフォルダ「test」を作成し、次のDOSコマンドを使用します

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

上記のコマンドを完了すると、フォルダーが空になり、フォルダーを削除できるようになります。

テストフォルダーが常に空になるので、いつでも削除できるので心配いりません。


12
何もインストールする必要がないため、ベストアンサー
luschn

1
rimrafを試してネットワークフォルダーを追加した後、これは私が見つけた最もクリーンなソリューションです。これを共有してくれてありがとう。
danyim 2016

1
素晴らしいソリューション; 簡単です。
bob.mazzo

2
ちょっとした追加を行いました:> NUL。私がこれを試してみたところ、コンソールによってスロットルされており、15分以上かかります。リダイレクションが設定されたため、約2分で終了しました
Mike Caron

面白いことに、いくつかのJSファイルを削除するには、さらに別のJSライブラリが必要です。
linuxunil 2018

30

Git Bashを使用してフォルダーを削除できます。

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

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


9
これはWindows 7では機能しませんでした。ディレクトリが空ではないというエラー
Miguel Stevens

5
-dフラグも指定する必要があります。これにより、ディレクトリーも削除されます。
Stuart.Sklinar

または-fRを使用して再帰的に上に登り、フォルダーも削除します
Dan

@Karthiga -rfは、RMに削除操作の実行方法を指示するフラグ/オプション/パラメーターです。 rサブディレクトリに再帰することfを強制し、削除を強制することを指示します(プロンプトを表示しません)。 -rf一度に複数のフラグ/オプションを指定するUNIXの規則です。
Tim Coker

20

私はGitBashを使用してdeフォルダーを削除しました!

rm -r node_modules

すべてを削除するにはしばらく時間がかかりましたが、私にとってはうまくいきました!


これでうまくいきました。以前リムラフを使っていました。rimrafが機能しなかったので、これを試しました。
Saiyaff Farouk、2016

これはトップコメントになるはずです。いいえ、何かを削除するためだけに何かをインストールします。あるいは、単に入力するだけRD node_modules
David MacNeil

15

Windowsのnode_modulesのようなDeep Netstedフォルダーを削除する

  1. オプション1

    rimrafNPMパッケージを使用して削除

    • コマンドプロンプトを開き、フォルダーがnode_modules存在するフォルダーにディレクトリを変更します 。

    • 走る

      rimraf node_modules

    • rimraf ERRORの欠落、その後のインストール

      npm install rimraf -g

    • インストールが完了したら、実行します

      rimraf node_modules

  2. オプション2

    何もインストールせずにDetele

    • test任意のドライブに名前の付いたフォルダを作成します

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

    • フォルダtestを削除するとFolderToDelete、両方とも空になります

なぜこれがWindowsの問題なのですか?

深くネストされたフォルダ構造の1つはnode_modules です。名前が長すぎるためWindowsはフォルダを削除できません。これを解決するには、簡単なソリューション、ノードモジュールRimRafをインストールします


Error: EPERM: operation not permitted
Travis Heeter

1
修正済み:コンピューターを再起動する必要がありました。何かが使用node_modulesしていましたが、許可エラーが発生しました。
Travis Heeter

8

Visual Studio Codeを試す

多くの解決策を試した後、これは非常に簡単です。Visualコードでプロジェクトを開き、削除します。UIが数秒間フリーズする可能性がありますが、確実に機能します。大きなサイズのnode_modulesフォルダーを多数使用してテストします

ここに画像の説明を入力してください

ありがとう


奇妙に動作します!! :)私はセーフモードでも使用しようとしましたが、使用されてsudo suいても役に立ちません。ところで、私はOSXで実行していますが、Mojaveにアップグレードするまでは起こりませんでした。
forloop


5

同様の問題があり、RDが機能しませんでした。理由は不明です。

NPMは独自の混乱を取り除くことができます。そのためnpm uninstall [module-name]、node_modulesの各ディレクトリに対して行う場合は、それらを取り除くことになります。

(多くの依存関係がある人のために、これを後でバッチループする方法を調べます。)



4

Windowsで実行するだけです。他のオペレーティングシステムではテストしていません。

rm -r node_modules

実際、これで任意のフォルダを削除できます。

rm -r AnyFolderWhichIsNotDeletableFromShiftDeleteOrDeleteのように

gitbashを開いてフォルダのルートに移動し、このコマンドを実行するだけです

これがお役に立てば幸いです。

ありがとう、Ajay Kotnala


2

Windowsでは、Total Commanderを使用して、フォルダーを選択してshift+をクリックするだけですdeleteshiftキーを忘れないでください。


これが最善の解決策です!TCはしゃっくりのないフォルダを削除し、それは非常に高速です
Marina Dunst

2

このような問題を回避するためのファイルマネージャー(Far Managerなど)

ここに画像の説明を入力してください


2
10年以上前から、そのようなインターフェースを使用している人を見たことがありませんでした。
Rikki

2

PowerShellのプロジェクトフォルダー内でdel node_modulesを実行すると、それとその子フォルダーを削除するかどうかを尋ねられます。「Y」を押すだけです。


シンプルなもの。ありがとう
estin sunny

... \ node_modulesには子があり、Recurseパラメータが指定されていません。続行すると、アイテムとともにすべての子が削除されます。続行してもよろしいですか?[Y]はい[A]はいすべて[N]いいえ[L]いいえすべて[S]一時停止[?]ヘルプ(デフォルトは "Y"):Y rd:ディレクトリC:\ ... \ node_modules \ ngx -color-picker \ distは空ではないため削除できません。rd node_modules -recurse
AUSTX_RJL

1
rd node_modules -recurse
AUSTX_RJL

@AUSTX_RJL rdも機能しますが、デルのnode_modules ..には問題がありませんでした。有線ですが、PSで削除する別の方法としては
tnx

2

すべてを試しましたが、うまくいきませんでした。上記のメソッドはすべて何もしませんでした。やっとVSCodeで削除できました。

  1. VSCodeでルートフォルダを開くだけです。
  2. node_modulesフォルダを選択して削除します。
  3. 利益。(few milliseconds削除には時間がかかります。)

VSCode-delete.png


2

node_modulesまたは他のフォルダーを高速に削除するためにWindowsコンテキストアイテムを作成しました。ディレクトリパスに無効な文字が含まれているために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ファイルを実行して、レジストリにインポートします。

    できた!

最終結果


1

私が使用する1つのソリューション:

(CI環境で作業するときは、新しい拡張機能(rimraf)のインストールを避けたいと思います。)

  1. A) packages.jsonを別の名前に変更します。B)特にCIについて-npmのインストール後、通常は名前を変更する代わりにファイルを削除しますが、必要な場合はこれを行う必要はありません。それはあなたの選択です。
  2. run- npm initこれは空のpackages.jsonファイルを作成します(依存関係なし)
  3. run-npm pruneこれはnode_modulesを依存関係セクションと照合します-これはpackages.jsonステップ2の結果として現在は空です。
  4. #1.A。を選択した場合 ステップは、新たに作成され、削除packages.json、およびオリジナルの名前を変更しpackages.json、元の名前に戻します。

1

簡単すぎる。

node_modules内のすべてのフォルダーを削除してから、実際のnode_moduleフォルダーを削除するだけです。

これは私にとってはうまくいきます。幸運....


正直なところ、これはより速い方法ですが、多くの忍耐が必要です。一度にいくつかのフォルダーを削除するとさらに便利です。
サントッシュ

1

Windowsでは、私の解決策はrmdir次のコマンドを使用することです:

rd /S .\node_modules\

初めて失敗した場合は、もう一度試してください。また、現在モジュール(npm run serveまたは同様のもの)を使用しているスクリプトを実行しているかどうかも確認してください。


0

このMSDN記事のこの外観から、レジストリの値を変更するか、グループポリシーを使用することで、Windows 10 v1607(別名「記念日の更新」)のMAX_PATH制限を回避できるように見えます


0

powershellを使用するだけです。

powershellを実行し、親フォルダーにcdしてから、次のようにします。

rm [yourfolder]

のように:

rm node_modules

0

Windows 10を使用していて、「ディレクトリが空ではありません」というメッセージが表示されたフォルダを削除できませんでした。rimrafrm -rf機能しませんでした

空のテキストファイルをすべてのフォルダーにコピーするとうまくいきました。node_modulesフォルダー全体を削除することができました。


0

場合によっては、rimrafグローバルにインストールした場合でも、ローカルのrimraf依存関係がある可能性があります(SASSには通常、依存関係があります)。この場合、次のコマンドを実行します。

問題やエラーが発生した場合は、usagidonが推奨する最初の2つの手順に従ってください。

npm uninstall rimraf & rimraf node_modules

これはローカルを削除しrimraf、グローバルを使用します


0

正確に関連しているわけではありませんが、これは私が同様の解決策を探して見つけた最初の投稿なので、ここに投稿する価値があると思います。

electron-reduxのインストールに失敗した後、node_modulesフォルダーを削除しようとすると、Windows 10で権限の問題が発生しました。electron-reduxが@typesを私のnode_modulesに追加したようですが、不正な権限が設定されていました。

リムラフは許可の問題に遭遇したため、機能しませんでした。

私はnode_modulesの名前を変更することになり、単純な削除が機能しました。


0

さて、私の問題は、node_modules内に.binフォルダーがあり、それを削除できなかったということでした。上記のすべてのソリューションを同じように試しましたが、何も機能しませんでした。

繰り返されていたエラーは、「フォルダを削除する権限がないか、他のプログラムで使用されています」でした。

「PCにアンチウイルスがインストールされていて、知らないうちにnode_modulesフォルダーのファイルを使用していた」という問題の解決策。

アンチウイルスをアンインストールするか、アンチウイルス設定オプションからパーミッション設定を変更できます(uが持っているアンチウイルスによって異なります)。これで、node_modulesフォルダーを削除できます。


0

私のために働いたのは:

  1. ノードマネージャコンソールを閉じた
  2. 現在のAtom(ビジュアルスタジオコード)開発環境を閉じました。
  3. 次に、node_modulesを削除します

    npm install rimraf -g 
    rimraf node_modules

0

PowerShellの方法:

PS > rm -r -force node_modules

# The same, but without using aliases
PS > Remove-Item -Recurse -Force node_modules

そしてnode_modules、サブディレクトリのすべてを削除したい場合:

再帰的に削除されるため、潜在的に危険です。ここで何をしているのかを確認してください

PS > dir -Path . -Filter node_modules -recurse | foreach {echo $_.fullname; rm -r -Force $_.fullname}

0

この目的のために、別のnpmパッケージを使用できます。を使用してフォルダーにローカルにインストールする

npm i rm-node-modules-recur

必要に応じて、-gスイッチを使用してグローバルにインストールすることもできます。

ローカルにインストールされている場合は、現在のディレクトリnode_modules.bin \からバイナリを呼び出すことができます

 .\node_modules\.bin\rmnodes "<top level directory within quotes>"

グローバルインストールを選択した場合は、単に使用してください

rmnodes "<top level directory within quotes>"

そして、それだけです..このパッケージは、すべてのサブディレクトリからnode_modulesを再帰的に削除することになります(私の場合は60個の奇数のフォルダー)。添付のスナップショットを参照してください。 rm-node-modules-recurの使用


-1

複数のフォルダに少しビート進めます...

「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}

ワイルかかります


-1

@ 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


このリンクで質問に答えることができますが、回答の重要な部分をここに含め、参照用のリンクを提供することをお勧めします。リンクされたページが変更されると、リンクのみの回答が無効になる可能性があります。- レビューから
SherylHohman
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.