Command Line Options


Опции командной строки

У Node.js много опций командной строки. Этои опции показывают встроенную отладку, множественные способы выполнения скриптов и другие полезные опции выполнения программ.

Для просмотра этой же документации в виде страницы мануала в своем терминале, запустите команду man node.

Основное

node [options] [v8 options] [script.js | -e "script"] [arguments]

node debug [script.js | -e "script" | :] …

node --v8-options

Выполняются без аргументов для запуска REPL.

Подробная информация про node debug в документации debugger.

Опции

-v, --version

Добавлено в v0.1.3

Выводит на экран версию Node.js

-h, --help

Добавлено в v0.1.3

Выводит на экран опции командной строки Node.js. Вывод этой опции менее детален, чем ее описание.

-e, --eval "script"

Добавлено в v0.5.2

Определяет следующий аргумент как аргумент JavaScript. Модули, которые предопределены в REPL, также могут использоваться в script.

-p, --print "script"

Добавлено в v0.6.4

Идентично -e, но выводит на экран результат.

-c, --check

Добавлено в v5.0.0

Синтаксис проверяет скрипт без выполнения.

-i, --interactive

Добавлено в v0.7.7

Открывает REPL, даже если stdin не является терминалом.

-r, --require module

Добавлено в v1.6.0

Подгружает указанный модуль при запуске.

Соблюдает правила разрешения для модулей require(). module может быть либо путем к файлу, либо именем модуля node.

--no-deprecation

Добавлено в v0.8.0

Делает предупреждения "тихими".

--trace-deprecation

Добавлено в v0.8.0

Выводит на экран стек устаревших версий.

--throw-deprecation

Добавлено в v0.11.14

Выдает ошибку об устаревшей версии.

--no-warnings

Добавлено в v6.0.0

Делает "тихими" все процессные предупреждения (включая предупреждения об устаревшей версии).

--trace-warnings

Добавлено в v6.0.0

Выводит на экран стек процессный предупреждений (включая предупреждения об устаревшей версии).

--trace-sync-io

Добавлено в v2.1.0

Выводит на экран стек трассировки определяемых синхронизаций ввода/вывода, которые были определены во время первого запуска цикла.

--zero-fill-buffers

Добавлено в v6.0.0

Автоматически обнуляет все нововыделенные буферы и экземпляры SlowBuffer.

Добавлено в v6.3.0

Дает инструкцию загрузчику модуля на сохранение символьных ссылок во время обработки и кэширования модулей.

По умлолчанию, когда Node.js загружает модуль из пути, который представлен символьной ссылкой на различные места диска, Node.js будет перенаправлять ссылку и использовать настоящий "реальный путь" модуля на диске в качестве индентификатора и корневого пути для назначения других модулей зависимости. В большинстве случаев это поведение по умолчанию будет приемлемым. Однако, при использовании символьно-связанных peer dependencies, как показано на примере ниже, поведение по умолчанию может привести к исключениям, если moduleA попытается запросить moduleB как peer dependencies:


  {appDir}
 ├── app
 │   ├── index.js
 │   └── node_modules
 │       ├── moduleA -> {appDir}/moduleA
 │       └── moduleB
 │           ├── index.js
 │           └── package.json
 └── moduleA
├── index.js
     └── package.json

Флаг командной строки --preserve-symlinks указывает Node.js на использование пути символьных ссылок для модулей для замещения реального пути, позволяя находить символьно-связанные peer dependencies.

Следует заметить, что использование --preserve-symlinks может иметь побочные эффекты. А именно: символьно-связанные нативные модули могут неправильно загрузиться, если они располагаются в разных местах дерева зависимостей (Node.js будет видеть их как два отдельных модуля и попытается загрузить модуль много раз, порождая ошибку).

--track-heap-objects

Добавлено в v2.4.0

Отслеживает распределения групп объектов для групповых снэпшотов.

--prof-process

Добавлено в v6.0.0

Вывод профайлера процесса v8, сгенерированный с помощью опции v8 -prof.

--v8-options

Добавлено в v0.1.13

Выводит опции командной строки v8.

Примечание: опции v8 позволяют словам быть разделенными как дефисами (-), так и нижними подчеркиваниями (_).

Например, --stack-trace-limit – то же самое, что и stack_trace_limit.

--tls-cipher-list=list

Добавлено в v4.0.0

Задает альтернативные дефолтные цифровые списки TLS. (Запрашивает билд Node.js с поддержкой шифрования. (По умолчанию) )

--enable-fips

Добавлено в v6.0.0

Включает FIPS-совместимое шифрование при запуске (запрашивает билд Node.js с ./configure --openssl-fips).

--force-fips

Добавлено в v6.0.0

Принудительный запуск FIPS-совместимое шифрование при запуске (не может быть отключен из скриптового кода)(такие же требования, как и у enable-fips).

--icu-data-dir=file

Добавлено в v0.11.15

Задает путь загрузки для ICU-данных (перезаписывает NODE_ICU_DATA).

Переменные окружения

NODE_DEBUG=module[,…]

Добавлено в v0.1.32

',' – разделенный список основных модулей, который должен выводиться на экран при компиляции.

NODE_PATH=path[:…]

Добавлено в v0.1.32

':' – разделенный список директорий, прешествующих путям к модулям.

Примечание: на Windows разделенный список - это ';'

NODE_DISABLE_COLORS=1

Добавлено в v0.3.0

При установке 1 цвета в REPL не будут использоваться.

NODE_ICU_DATA=file

Добавлено в v0.11.15

Путь к данным для ICU. Расширяет связанные данные при компиляции с поддержкой small-icu.

NODE_REPL_HISTORY=file

Добавлено в v5.0.0

Путь к файлу, используемый для хранения постоянной истории REPL. По умолчанию путь ~/.node_repl_history, который можно перезаписать с помощью этой переменной. Задание значения в виде пустой строки ("" или " ") отключает постоянную историю REPL.