Shell命令的Shell_exec返回值NULL

我正在尝试获取我的vg空间磁盘的价值。当我在shell中运行命令时,我没有任何问题可以返回正确的值,但是当我将其包含在PHP文件中时,我将返回NULL值。


我看到很多线程对此争论不休,但是没有一个答案解决了我的问题:(


什么命令有效?这个 :


$variable = shell_exec("df -h | grep "username" | awk '{print $3}'");

我不认为这是一个权限问题,因为此命令有效。.对于测试脚本,它具有777和root权限。


有问题的代码:


$test = "VG Size";

$tailletotaleduserveur = shell_exec("vgdisplay vghome | grep ".$test." | awk '{print $3}'");

echo json_encode($tailletotaleduserveur);

网络标签中的实际结果:null-> http://prntscr.com/nehsmb


它应该返回“ 5.85”


慕斯王
浏览 720回答 2
2回答

眼眸繁星

您的命令在shell中也会失败:bash$ vgdisplay vghome | grep VG Size | awk '{print $3}' grep: Size: No such file or directory您必须引用'VG Size':$tailletotaleduserveur = shell_exec("vgdisplay vghome | grep '".$test."' | awk '{print $3}'");

慕的地6264312

我的问题的最终答案:):$test = 'VG Size';$tailletotaleduserveur = shell_exec("/usr/bin/sudo vgdisplay vghome | grep '". $test."' | awk '{print $3}'");这样其他人;)部分正确;)我会确认您的回答,谢谢
打开App,查看更多内容
随时随地看视频慕课网APP