J'ai plusieurs projets NPM enregistrés dans un répertoire local. Maintenant, je veux effectuer une sauvegarde de mes projets sans le dossier node_modules
, car il prend beaucoup de place et peut également être récupéré à tout moment à l'aide de npm install
.
J'ai donc besoin d'une solution pour supprimer tous les dossiers node_modules de manière récursive à partir d'un chemin spécifié à l'aide de l'interface de ligne de commande . Toute suggestion/aide est extrêmement appréciable.
Réponse originale:
find . -name 'node_modules' -type d -Prune -exec rm -rf '{}' +
Vous pouvez également utiliser corbeille (npm install --global trash-cli
) pour sauvegarder la suppression:
find . -name node_modules -type d -Prune -exec trash {} +
J'ai rencontré cette solution,
find
et spécifiez le nom du dossier.-exec rm -rf '{}' +
exécutez la commande suivante pour supprimer les dossiers de manière récursive
find /path -type d -name "node_modules" -exec rm -rf '{}' +
Améliorer la réponse acceptée,
find . -name 'node_modules' -type d -Prune -exec rm -rf '{}' +
J'ai trouvé que la commande fonctionnerait très longtemps pour extraire tous les dossiers, puis exécuter une commande de suppression. Pour que la commande soit reprise, je suggérerais d'utiliser \;
et pour voir la progression de la commande en cours d'exécution, utilisez -print
pour voir le répertoire supprimé. .
Remarque: Vous devez d'abord cd
dans le répertoire racine, puis exécuter la commande ou, à la place de find .
, utilisez find {project_directory}
.
Pour supprimer les dossiers un à un
find . -name 'node_modules' -type d -Prune -exec rm -rf '{}' \;
Pour supprimer les dossiers un par un et imprimer le dossier en cours de suppression
find . -name 'node_modules' -type d -Prune -print -exec rm -rf '{}' \;
Ça marche vraiment bien
find . -name "node_modules" -exec rm -rf '{}' +