繁体   English   中英

没有sudo的命令有效,但需要sudo

[英]Command without sudo works but requires sudo

我已经解决了这个问题,但是我不知道为什么这可以解决问题,而且我不喜欢不知道出了什么问题。 我在Ubuntu上使用终端

这是问题所在...

  1. 如果我运行$ ngm -args它将运行但由于需要sudo而失败

  2. 如果我运行$ sudo ngm -args出现类似ngm的错误

  3. 如果我运行$ sudo /usr/local/lib/ngm -args它将与sudo $ sudo /usr/local/lib/ngm -args运行,并且运行良好。

我不明白为什么3个有效,而2个无效。

尝试运行$ ngm -args ,shell会在$PATH变量中查找可执行文件,然后找到它。 尝试运行可执行文件时,它发现它必须是sudo并退出。
当您运行$ sudo ngm -args ,shell将在Root用户的$PATH环境中查找可执行文件,但找不到该可执行文件。
当像最后一个选项一样运行它时,shell无需查看root用户的$PATH ,因为它在您指定的/usr/local/lib/ngm路径中找到了它,所以两个问题都消失了。

这可能是了解PATH的起点

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM