2016-09-13 1 views
0

Я создаю пакет Atom и пытаюсь включить команду ShellJS. Я хочу использовать коммит exec(), и он возвращает null каждый раз, для каждой команды.ShelllJS exec возвращает null для каждой команды - Разработка пакета Atom

shelljs = require 'shelljs/global' 

console.log exec('which git').code // returns null 
console.log which 'git' // returns the correct path 

Почему?

+0

Я попробовал 'console.log (exec ('which git'). Code);' и он работает хорошо. Версия Shelljs - 0.7.4. Возможно, эта проблема была исправлена ​​в shelljs. – shaochuancs

ответ

0

console.log Exec ('который мерзавец'). Код // возвращает нуль

Это пытается запустить внешний исполняемый файл с названием which но нет такой программы. which - это встроенная командная оболочка, а не отдельная программа, поэтому она терпит неудачу.

console.log, который «мерзавец» // возвращает правильный путь

Она использует shelljs which функции, которая является прямым аналогом тех же команд в оболочке, поэтому она работает.

Смежные вопросы