loading...

Como deletar recursivamente todos as pastas node_modules do Windows, Linux e Mac

shadowlik profile image Henrique Marques Fernandes Originally published at marquesfernandes.com on ・2 min read

Quem desenvolve em node já percebeu que toda vez que começamos um projeto e executamos npm install, uma infinidade de dependências são instaladas e na maioria das vezes não nos preocupamos com a quantidade de arquivos e o espaço que eles podem ocupar em nosso disco.

Uma única pasta node_modules pode chegar a pesar entre 200mb e 1gb! Multiplique isso pela quantidade de projetos que se tem em seu computador e teremos um verdadeiro problema de armazenamento.

Recentemente precisei fazer um backup da minha pasta de projetos, mas ela estava pesando algo em torno de 20gb, o que tornou o processo extremamente lento, mesmo comprimindo, ainda precisava otimizar mais. Decidi então remover todas as pastas node_modules e para minha não surpresa, o tamanho reduziu para apenas 2gb!

Encontrando e listando todas as pastas node_modules

Primeira vamos listar todas as pastas node_modules dentro da pasta em que queremos procurar recursivamente, é importante analisar com calma para não deletar algo indesejado.

Mac / Linux:

$ cd projects $ find . -name "node\_modules" -type d -prune -print | xargs du -chs

Windows:

$ cd projects $ FOR /d /r . %d in (node\_modules) DO @IF EXIST "%d" echo %d"

Eu estou usando o emulador de terminal do GitBash que me permite o uso do comando rm -rf no Windows.

Deletando todas as pastas node_modules

Agora vamos adicionar ao nosso comando a opção de deletar. ESSE PROCESSO É IRREVERSÍVEL , tenha certeza do que está fazendo.

Mac / Linux:

$ cd projects $ find . -name 'node\_modules' -type d -prune -print -exec rm -rf '{}' \;

Windows:

$ cd projects $ FOR /d /r . %d in (node\_modules) DO @IF EXIST "%d" rm -rf "%d"

Windows PowerShell:

Get-ChildItem -Path "." -Include "node\_modules" -Recurse -Directory | Remove-Item -Recurse -Force

O post Como deletar recursivamente todos as pastas node_modules do Windows, Linux e Mac apareceu primeiro em Henrique Marques Fernandes.

Posted on by:

shadowlik profile

Henrique Marques Fernandes

@shadowlik

I'm a passionate unicorn full-stack web developer!

Discussion

markdown guide