【发布时间】:2013-08-30 01:27:55
【问题描述】:
安装必要的模块后,以下命令
azure account -help
按预期工作。但是,当我使用 exec() 从 PHP 内部调用相同的命令时。
exec('azure account -help',$output,$responseCode)
并打印输出,我得到
$output: [] (空数组) 和 $responseCode: 8
我尝试使用命令“节点”执行模块。例
node /usr/lib/node_modules/azure-cli/bin/azure.js 账户-帮助
这也适用于命令行,但不能通过 PHP 的 exec。
编辑:使用以下命令重定向标准错误:
exec('azure account -help &2>1',$output,$responseCode)
给出了这些细节:
,E === undefined) && (process.env.HOMEDRIVE === undefined))) {throw new Error(, ^,Error: HOME not found, unable to store Streamline callback cache, at Object. (/ usr/local/lib/node_modules/azure-cli/node_modules/streamline/lib/compiler/compile.js:278:90),在 Module._compile (module.js:456:26),在 Object.Module._extensions。 .js (module.js:474:10)、Module.load (module.js:356:32)、Function.Module._load (module.js:312:12)、Module.require (module.js :364:17),在 require (module.js:380:17),在 Object. (/usr/local/lib/node_modules/azure-cli/node_modules/streamline/lib/compiler/register.js:28:15 ),在 Module._compile (module.js:456:26),在 Object.Module._extensions..js (module.js:474:10)
我可以尝试进一步调试什么?
【问题讨论】:
-
php 不是 bash,不会在 PATH 中搜索 azure 命令。尝试调用它,使用 azure 的完整路径。