为了账号安全,请及时绑定邮箱和手机立即绑定

运行后,请问该如何把Resource id #17给解析出来

运行后,请问该如何把Resource id #17给解析出来

一只甜甜圈 2022-06-16 17:11:43
如运行$cmd = "export; /usr/bin/sudo /sbin/vgdisplay";$info = popen($cmd,'r');echo $info;得出的是Resource id #17就是用php的popen()函数运行了一个linux命令,把这个命令得到的结果$info输出出来是Resource id #17,如何把Resource id #17给解析出来。在linux里运行这个命令显示的是--- Volume group ---VG Name localhostSystem IDFormat lvm2Metadata Areas 1Metadata Sequence No 3VG Access read/writeVG Status resizableMAX LV 0Cur LV 2Open LV 2Max PV 0Cur PV 1Act PV 1VG Size 232.64 GBPE Size 4.00 MBTotal PE 59557Alloc PE / Size 59557 / 232.64 GBFree PE / Size 0 / 0VG UUID xhGwsx-3SDn-2mgR-XBrE-Nwtt-uJDM-lW7MB1
查看完整描述

3 回答

?
MM们

TA贡献1886条经验 获得超2个赞

PHP 中的 popen() 函数
popen() 函数打开进程文件指针。
popen(command,mode)

参数说明
command 必需。规定要执行的命令。
mode 必需。规定连接模式。 可能的值:
r: 只读。
w: 只写 (打开并清空已有文件或创建一个新文件)

打开一个指向进程的管道,该进程由派生指定的 command 命令执行而产生。
返回一个和 fopen() 所返回的相同的文件指针,只不过它是单向的(只能用于读或写)并且必须用 pclose() 来关闭。此指针可以用于 fgets(),fgetss() 和 fwrite()。
若出错,则返回 false。
例如:

<?php
$file = popen("/bin/ls","r");

//一些要执行的代码

pclose($file);
?>



查看完整回答
反对 回复 2022-06-20
?
杨__羊羊

TA贡献1943条经验 获得超7个赞

1、执行外部程序。语法: string exec(string command, string [array], int [return_var]);返回值: 字符串函数种类: 操作系统与环境内容说明本函数执行输入 command 的外部程序或外部指令。它的返回字符串只是外部程序执行后返回的最后一行;若需要完整的返回字符串,可以使用 PassThru() 这个函数。要是参数 array 存在,command 会将 array 加到参数中执行,若不欲 array 被处理,可以在执行 exec() 之前呼叫 unset()。若是 return_var 跟 array 二个参数都存在,则执行 command 之后的状态会填入 return_var 中。值的注意的是若需要处理使用者输入的资料,而又要防止使用者耍花招破解系统,则可以使用 EscapeShellCmd()。相关函数:system() PassThru() popen() EscapeShellCmd()

查看完整回答
反对 回复 2022-06-20
?
斯蒂芬大帝

TA贡献1827条经验 获得超8个赞

proc_open 用这个也可,

<?php

$handle = popen("tail -f /etc/httpd/logs/access.log 2>&1", 'r');
while(!feof($handle)) {
$buffer = fgets($handle);
echo "$buffer<br/>\n";
ob_flush();
flush();
}
pclose($handle);

?>


查看完整回答
反对 回复 2022-06-20
  • 3 回答
  • 0 关注
  • 212 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信