pnpm run
Алиасы: run-script
Запускает скрипт, определенный в файле манифеста пакета.
Примеры
Допустим, у вас есть сценарий watch, настроенный в файле package.json, например:
"scripts": {
    "watch": "webpack --watch"
}
Теперь вы можете запустить этот сценарий с помощью pnpm run watch! Просто, правда? Для тех, кто любит сохранять нажатия клавиш и время, хорошая новость: все сценарии получают алиас в виде команд pnpm, поэтому, в конечном счете, pnpm watch - это всего лишь краткая запись для pnpm run watch (ТОЛЬКО для сценариев, которые не используют то же имя, что и уже существующие команды pnpm).
Выполнение нескольких сценариев
Вы можете запускать несколько сценариев одновременно, используя регулярное выражение, а не имя сценария.
pnpm run "/<regex>/"
Запустить все скрипты, названия которых начинаются с watch::
pnpm run "/^watch:.*/"
Подро бности
В дополнение к уже существующим в окружении PATH, pnpm run содержит node_modules/.bin в PATH, предоставляемом сценариям. Это значит, до тех пор, пока у вас установлен пакет, вы можете использовать его в скрипте, как обычную команду. Например, если у вас установлен eslint, вы можете создать такой сценарий:
"lint": "eslint src --fix"
И, хотя в вашей оболочке не установлен eslint, он будет работать.
Для рабочих областей, <workspace root>/node_modules/.bin также добавляется в PATH, поэтому если инструмент установлен в корне рабочей области, он может называться в сценариях любого пакета.
Окружение
Есть некоторые переменные окружения, которые pnpm автоматически создает для исполняемых сценариев. Эти переменные окружения могут использоваться для получения контекстной информации о запущенном процессе.
Это переменные окружения, созданные pnpm:
- npm_command - содержит имя исполняемой команды. При исполнении команды pnpm runзначение этой переменной будет "run-script".
Опции
Любые параметры команды run должны быть перечислены перед названием сценария. Опции, перечисленные после имени скрипта передаются исполняемому скрипту.
Все они будут запускать pnpm CLI с параметром --silent:
pnpm run --silent watch
pnpm --silent run watch
pnpm --silent watch
Все аргументы после имени команды добавляются в исполняемый сценарий. Так что, если watch запускает webpack --watch, то эта команда:
pnpm run watch --no-color
запустит:
webpack --watch --no-color