npm / yarn / pnpm を使う機会が多いと、あれよあれよと node_modules が作られていって、気づけばディスク容量を圧迫している。
試したリポジトリ、放置している検証用プロジェクト、古いクローン……散らばった node_modules を1つずつ探して rm -rf するのは面倒なので、npkill というコマンドを使うと簡単に整理できることをメモしておく。
npkillとは
npx npkill を実行するだけで使える CLI ツールで、インストール済みの node_modules フォルダをディスク上から探し出し、対話的に選んで削除できる。
npx npkill実行するとカレントディレクトリ以下がスキャンされ、見つかった node_modules が一覧表示される。矢印キーでカーソルを移動し、削除したいフォルダを選んでスペースキー(または Enter)を押すと、その場で削除される。
よく使うnpkill作例
特定のパス(例:~/projects)だけ探す
npx npkill -d ~/projects50MB未満のnode_modulesを除外して表示
npx npkill --size-greater-than 50指定ワードがパスに含まれるものだけ表示(例:react)
npx npkill --filter react確認ダイアログなしですべて削除(超危険・自己責任!)
npx npkill --no-interactive --delete-allヘルプ表示(すべてのオプションを見る)
npx npkill --helpまとめ
散らばった node_modules を手動で find して rm -rf するより、npx npkill で対話的に選んで削除する方が速い。
インストール不要で npx から叩けるので、思い立ったときにすぐ使えるのも良い。
| 状況 | 対処法 |
|---|---|
散らばった node_modules をまとめて確認したい | npx npkill を実行して一覧表示 |
| 個別に選んで削除したい | 矢印キーで選択してスペース/Enterで削除 |