Некоторые пакеты 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, фреймворк для создания блога. На главной странице проекта есть информация о том как его установить и запустить
Для полного доступа к курсу нужен базовый план
Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.