從 bash 運行“lessc”時出現“找不到命令”

從 bash 運行“lessc”時出現“找不到命令”

我已經安裝了lessc透過npmNode.js 套件管理器,當我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/;我不得不在 FreeNode 上的 #node.js 中詢問。

答案2

“lessc”可執行檔在哪裡?做:

type -p lessc

記下該目錄,並找出該目錄添加到您的 PATH 中的位置。我認為 bash 和 incron 不會以相同的方式取得安裝檔(.bashrc 等)。閱讀 Bash 手冊頁,INVOCATION 部分描述了 bash 如何找到其啟動文件。對 incron 原始碼的快速 grep 顯示它沒有提到 .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

相關內容