在/ var / www目录中使用sass --watch命令时出现“sudo:sass:command not found”错误

时间:2013-05-26 05:24:20

标签: ruby sass

我正在尝试让SASS观看SCSS文件以进行更改。当我在任何桌面文件夹中运行watch命令时,它可以工作,例如sass --watch Documents/test.scss:Documents/test.css

但是当我在/ var / www目录中运行它时,它会失败。例如,运行sass --watch /var/www/scss/test.scss:/var/www/css/test.css"会导致以下错误:Errno::EACCES: Permission denied - /var/www/css/test.css。这可能是因为/ var / www目录归Apache所有。

我尝试使用sudo sass --watch /var/www/test.scss:/var/www/test.css命令以root身份运行命令,但这会给我发出以下错误:sudo: sass: command not found

我正在使用Ruby 1.9.3在Ubuntu 12.10上运行它。我对两者都很陌生。

2 个答案:

答案 0 :(得分:2)

您的sass二进制文件必须位于root $PATH之内的位置。找到它所在的位置,作为您自己的用户:

which sass

然后在sass命令中使用sudo二进制文件的完整路径。

答案 1 :(得分:2)

您可能以用户身份安装了rvm。如果您使用sudo运行命令,则将其作为用户root运行,其中rvm并且未安装整个ruby环境。

要解决此问题,您可以使用 rvmsudo (请参阅http://ruby.about.com/od/rubyversionmanager/qt/Rvm-And-Sudo.htm