«команда не найдена» при запуске «lessc» из bash

«команда не найдена» при запуске «lessc» из bash

Я установилlesscчерез npm, Node.js Package Manager, и когда я запускаю lesscиз терминала, используя

lessc /var/www/less/style.less /var/www/css/style.css

работает отлично.
Однако, когда я вставляю эту же команду в скрипт bash, less.shон возвращает ошибку

lessc : command not found.

Кроме того, мне нужно запустить эту команду из скрипта bash, потому что incronпрограмма, которую я использую для перекомпиляции моего скрипта less каждый раз после его изменения, не может запустить указанную выше команду, что, как я полагаю, может быть вызвано странными методами обработки пробелов в команде.

решение1

npm install -g less

Это устанавливает Less.js глобально. Возможно, вы уже пробовали это, но в документации этого нетhttp://lesscss.org/; Мне пришлось поспрашивать в #node.js на FreeNode.

решение2

Где находится исполняемый файл "lessc"?

type -p lessc

и обратите внимание на каталог, и выясните, где этот каталог добавлен в ваш PATH. Я думаю, что bash и incron по-разному получают ваши файлы настройки (.bashrc и т. д.). Читая страницу руководства Bash, раздел INVOCATION описывает, как bash находит свои файлы запуска. Быстрый grep по исходному коду incron показывает, что он не упоминает .bashrc или .bash_profile.

Вы можете изменить команду «lessc» в своем скрипте следующим образом:

/actual/path/to/lessc

что вы нашли через

type -p lessc

решение3

в лубунту:

$ type -p lessc
$ lessc
El programa «lessc» no está instalado. Puede instalarlo escribiendo:
sudo apt-get install node-less
$ sudo apt-get install node-less

Связанный контент