@Wylaroren

Как называются элементы CLI в NodeJS и какие их комбинации возможны?

Я специально сузил вопрос до CLI NodeJS-приложений, потому что если брать нативные терминалы, то ответом на этот вопрос будут тысячи страниц документации. В данном вопросе я также интересуюсь английскими официальными названиями, поскольку это важно для правильного именования переменных.

Что мне уже известно по этому поводу

614e8f321a575806434468.png

1. По сути, это имя вызываемого консольного приложения (**applicationName**?)
2. Я называю это командной фразой (**commandPhrase**), потому что она не обязательно должна состоять из одного слова (то есть называние "ключевое слово" не подходит.). Этот элемент опциональный, так как такие утилиты, как **gulp** **webpack**, без него обходятся (пример команды `webpack --mode production`)
3. По сути это строчный параметр (**stringParameter**), где 3.1 - имя (**parameterName**) и 3.2 - значение (**parameterValue**). Есть ещё альтернативных синтаксис `parameterName=parameterValue`.
4. Это булевский параметр (**booleanParameter**), наличие которого означает значение `true`. Если после `--foo` идёт `--bar`, а не значение, то значит `--foo` - булевский.

Другие типы элементов CLI мне неизвестны.
  • Вопрос задан
  • 152 просмотра
Решения вопроса 1
saboteur_kiev
@saboteur_kiev
software engineer
command line interface уже давно выработал очень простой стандарт.

Есть команда (внутренняя команда оболочки или внешняя утилита, вроде nodejs)
Есть аргументы к команде
Аргументы логически делятся на опции и параметры.

Опции обычно начинаются с дефиса или двух (в POSIX стандарте один дефис для коротких опций, вроде -h, -e, два дефиса для длинных опций, вроде --help, --environment)
Некоторые опции могут требовать параметр (--environment prod), некоторые нет.

Параметры - это сами данные - названия файлов, устройств, другие данные в виде текста

По стандарту POSIX короткие опции, которые не требуют дополнительного параметра, могут объединяться под одним дефисом ( пример: rm -rf )

Список конкретных опций и параметров у каждой утилиты свой. Не все утилиты строго следуют POSIX, поэтому могут быть варианты. Для этого читай документацию конкретной утилиты.
Таким образом твой вопрос относится не к nodejs, а к общим стандартам работы в командной строке.

Ну и еще в CLI есть перенаправления, это отдельная лекция.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы