sudo
을 사용하는 다른 사용자로 screen
을 실행하려고합니다.sudo : command not found
echo 'userpassword' | /usr/bin/sudo -u 'myuser' -S '/usr/bin/screen -ls'
인터넷에서 발견 어떤 도움이 sudo
이 환경 변수를 지 웁니다 것을 (같은 PATH
)를 말한다 :
나는 명령을 사용하고 있습니다. 그래서 응용 프로그램에 대한 전체 경로를 사용하기로 결정했지만 여전히 명령을 찾을 수 없습니다. 오류.
오류 : 도우가 시스템에 설치되어
sudo: /usr/bin/screen -ls: command not found
. 화면이 시스템에 설치되었습니다.
sudo
의 경우 -E
및 -H
플래그를 시도했지만 도움이되지 않습니다. $PATH
내가 다른 오류를 얻고 있었다 명령이 실행되기 전에 확장 할 생각되었지만 기발한
... | /usr/bin/sudo -u 'myuser' -S 'env PATH=$PATH; /usr/bin/screen -ls'
...
누군가가를 제공 할 수
나는 이런 식으로 뭔가를 사용하여PATH
변수를 설정하려 명령을 사용하면 다른 사용자로 명령을 실행할 수 있으며 명령의 각 부분이 무엇을 설명하는지 이해할 수 있습니까?
감사합니다.
이 질문은 아마도 StackExchange 사이트 [** Super User **] (http://superuser.com/) 또는 [** ServerFault **] (http://serverfault.com/) –
에 더 적합 할 것입니다. 정확한 (복사하여 붙여 넣은) 오류 메시지를 표시하려면 질문을 업데이트하십시오. BTW,'sudo'는'$ PATH'를 완전히 초기화하지 않습니다;/usr/local/bin :/usr/sbin :/usr/bin :/sbin :/bin' –
나는이 질문을 off- 프로그래밍 질문이 아니기 때문에 주제가 중요합니다. [unix.se]를 시도해보십시오. –