Некоторые пакеты Node.js представляют собой не просто подключаемые библиотеки, а законченные программы. Например утилита cloc, которая умеет считать количество строк кода в проекте. Сама эта утилита не привязана к JavaScript, она работает с исходными файлами на множестве разных языков.
Подобные утилиты не связаны с конкретным проектом и даже с JavaScript. Подразумевается, что ими может воспользоваться кто угодно. Для таких случаев в npm существует еще один способ установки – глобальный. Посмотрите пример:
# В зависимости от способа установки Node.js
# может понадобиться sudo в начале команды
npm install -g cloc
Флаг -g говорит о том, что пакет нужно установить глобально. Выполнять эту команду можно из любого места файловой системы. npm добавляет этот пакет в специальную директорию, которая доступна для всех пользователей системы. Узнать ее расположение можно еще одной командой npm:
npm config ls -l
...
prefix = "/Users/tirion/.asdf/installs/nodejs/14.5.0/.npm"
...
После установки утилита становится доступна в командной строке по какому-то имени, которое указано в документации проекта, например, на гитхабе. В случае cloc имя пакета совпадает с именем команды:
# Обратите внимание на точку после команды cloc
# Она означает что нужно анализировать текущую директорию
cloc .
      49 text files.
      41 unique files.
      11 files ignored.
github.com/AlDanial/cloc v 1.98  T=0.02 s (2459.4 files/s, 74680.8 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
Markdown                        19            213              0            523
YAML                            21             35              0            471
CSS                              1              0              0              3
-------------------------------------------------------------------------------
SUM:                            41            248              0            997
-------------------------------------------------------------------------------
Самостоятельная работа
- Установите утилиту cloc глобально
- В проекте nodejs-package запустите анализ количества строк
- В проекте hexlet-js также запустите cloc и сравните результаты анализа обоих проектов
- В качестве эксперимента попробуйте установить hexo.io, фреймворк для создания блога. На главной странице проекта есть информация о том как его установить и запустить
Для полного доступа к курсу нужен базовый план
Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.