bash에서“lessc”를 실행할 때“명령을 찾을 수 없습니다”


12

Node.js 패키지 관리자 lessc를 통해 설치 했으며 터미널을 사용하여 터미널에서 npm실행할 때lessc

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

완벽하게 작동합니다.
그러나 똑같은 명령을 bash 스크립트에 넣으면 less.sh오류가 반환됩니다.

lessc : command not found.

또한, 나는 때문에, 떠들썩한 파티 스크립트에서이 명령을 실행해야합니다 incronI가 사용하고있는 프로그램 내 작은 스크립트가 수정 될 때마다 재 컴파일, 내가 발생할 수 있습니다 생각하는 명령이 위에서 언급 한 실행할 수 없습니다 명령에서 공백을 처리하는 이상한 방법.


작동하지 않는 스크립트는 작동하는 동일한 터미널에서 실행 lessc되거나 다른 방식 (크론, 실행기, Alt-F2 등)으로 실행됩니까?
enzotib

명령 끝에 백틱이 있습니다. 이 오타가 여기에만 있습니까 아니면 귀하의 less.sh에도 있습니까?
elmicha

예, 백틱은 오타였습니다. @enzotib는 스크립트가 어디에서 실행되는지 중요하며 위에서 언급 한 오류를 일으킬 수있는 것을 변경합니까?
속어

그렇습니다. 다른 상황에서는 다른 PATH를 가질 수 있습니다.
enzotib

고맙게도 $ PATH 변수를 조사한 후 lessc가 "/ opt / lessc / bin / lessc"에 있고 $ PATH에 추가해야한다는 것을 알았습니다.
slang

답변:


7

"lessc"실행 파일은 어디에 있습니까? 하다:

type -p lessc

디렉토리를 기록하고 해당 디렉토리가 PATH에 추가되는 위치를 찾으십시오. bash와 incron은 설정 파일 (.bashrc 등)을 같은 방식으로 소싱하지 않는다고 생각합니다. INVOCATION 섹션의 Bash 매뉴얼 페이지를 읽고 bash가 시작 파일을 찾는 방법을 설명합니다. incron 소스를 통한 빠른 grep은 .bashrc 또는 .bash_profile을 언급하지 않았 음을 보여줍니다.

스크립트에서 "lessc"명령을 다음과 같이 변경할 수 있습니다.

/actual/path/to/lessc

당신이 통해 찾은

type -p lessc

또는 bash 파일에서 "PATH = $ PATH : / actual / path / to / lessc /"명령을 사용하여 "/ actual / path / to / lessc /"를 $ PATH에 추가하십시오. 그리고 답변으로 의견을 게시 해 주셔서 감사합니다.
속어

21
npm install -g less

이것은 전 세계적으로 Less.js를 설치합니다. 어쩌면 이미 시도했지만 http://lesscss.org/ 의 설명서에 없습니다 . FreeNode의 # node.js에서 물어봐야했습니다.


우분투 터미널에서 명령을 실행했지만 npm ERR이 발생했습니다! 삭제 거부 : / usr / bin / lessc가 / usr / lib / node_modules / less에 없습니다. 파일이 존재합니다 : / usr / bin / lessc 파일을 옮겨서 다시 시도하십시오. npm ERR! 시스템 리눅스 3.2.0-90-generic-pae npm ERR! "/ usr / bin / node"명령 "/ usr / bin / npm" "install" "-g" "less"npm ERR! cwd / home / best npm ERR! node -v v0.10.40 npm ERR! npm -v 1.4.28 npm 오류! 경로 / usr / bin / lessc npm ERR! 코드 EEXIST npm ERR! not ok code 0
DaSaDiYa ChaiTAnYa

0

루 분투에서 :

$ 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
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.