ОБНОВЛЕНИЕ : Как Seyeong Jeong указывает в своем ответе ниже, начиная с npm 5.2.0 вы можете использовать npx [command]
, что более удобно.
СТАРЫЙ ОТВЕТ для версий до 5.2.0 :
Проблема с положением
./node_modules/.bin
в вашей переменной PATH работает только в том случае, если ваш текущий рабочий каталог является корнем структуры каталога вашего проекта (т. Е. Местоположение node_modules
)
Независимо от того, какой у вас рабочий каталог, вы можете получить путь к локально установленным двоичным файлам с помощью
npm bin
Чтобы выполнить локально установленный coffee
двоичный файл независимо от того, где вы находитесь в иерархии каталогов проекта, вы можете использовать эту конструкцию bash
PATH=$(npm bin):$PATH coffee
Я связал это с npm-exec
alias npm-exec='PATH=$(npm bin):$PATH'
Итак, теперь я могу
npm-exec coffee
чтобы запустить правильную копию кофе, где бы я ни был
$ pwd
/Users/regular/project1
$ npm-exec which coffee
/Users/regular/project1/node_modules/.bin/coffee
$ cd lib/
$ npm-exec which coffee
/Users/regular/project1/node_modules/.bin/coffee
$ cd ~/project2
$ npm-exec which coffee
/Users/regular/project2/node_modules/.bin/coffee