Чтобы удалить все файлы в любом каталоге, который находится в текущем и назван node_modules
с сохранением node_modules
:
find . -path '*/node_modules/*' -delete
(Это было протестировано с GNU, find
но я ожидаю, что BSD / OSX find
будет вести себя аналогично.)
пример
Давайте создадим node_modules
каталог с несколькими файлами в нем:
$ mkdir -p node_modules/dir $ touch node_modules/file
Теперь давайте посмотрим, какие файлы find
возвращает эта команда:
$ find . -path '*/node_modules/*' ./node_modules/dir3 ./node_modules/dir1 ./node_modules/file3 ./node_modules/file2 ./node_modules/file1 ./node_modules/dir2
Это показывает файлы внутри, node_modules
но не сам node_modules
каталог. Таким образом, мы можем удалить файлы с помощью:
$ find . -path '*/node_modules/*' -delete $ ls node_modules