在PHP的shell_exec和终端中运行命令之间有什么区别?

时间:2013-09-19 03:24:10

标签: php terminal exec shell-exec bitcoin

我遇到了一个奇怪的问题,正在运行的程序试图做一些不同的事情,这取决于我是从Ubuntu的终端运行还是从shell_exec()或exec()运行它。当我在两者上执行“whoami”命令时,我得到相同的响应(我自己的用户名),所以我看不出它是用户问题。

如果您需要更多细节,我正在为Electrum比特币客户端运行命令,例如“electrum validateaddress 123”。在终端中,它为我提供了一个JSON字符串。在PHP的shell_exec中,它会抛出一个错误。在调试错误时,我发现它正在尝试在“/root/.electrum/”中创建一个新钱包,而它应该在“/home/username/.electrum/”中查找。当然,它没有在那里创建文件夹的权限,因此它失败了。

因此,如果在PHP中运行“whoami”在Ubuntu(不是root用户)中给我自己的用户名,为什么要查找根文件夹呢?

0 个答案:

没有答案