php通过popen获取的一个命令的返回值如何分析出来

[复制链接]
查看11 | 回复3 | 2015-5-25 16:26:11 | 显示全部楼层 |阅读模式
如运行
$cmd = "export LANG=C; /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
localhost
System ID
Format
lvm2
Metadata Areas
1
Metadata Sequence No3
VG Access
read/write
VG Status
resizable
MAX LV
0
Cur LV
2
Open LV
2
Max PV
0
Cur PV
1
Act PV
1
VG Size
232.64 GB
PE Size
4.00 MB
Total PE
59557
Alloc PE / Size
59557 / 232.64 GB
FreePE / Size
0 / 0
VG UUID
xhGwsx-3SDn-2mgR-XBrE-Nwtt-uJDM-lW7MB1

回复

使用道具 举报

千问 | 2015-5-25 16:26:11 | 显示全部楼层
PHP 中的 popen() 函数popen() 函数打开进程文件指针。popen(command,mode)参数说明command 必需。规定要执行的命令。mode
必需。规定连接模式。 可能的值:
r: 只读。
w: 只写 (打开并清空已有文件或创建一个新文件)打开一个指向进程的管道,该进程由派生指定的 command 命令执行而产生。返回一个和 fopen() 所返回的相同的文件指针,只不过它是单向的(只能用于读或写)并且必须用 pclose() 来关闭。此指针可以用于 fgets(),fgetss() 和 fwrite(...
回复

使用道具 举报

千问 | 2015-5-25 16:26:11 | 显示全部楼层
1、执行外部程序。语法: string exec(string command, string [array], int [return_var]);返回值: 字符串函数种类: 操作系统与环境内容说明本函数执行输入 command 的外部程序或外部指令。它的返回字符串只是外部程序执行后返回的最后一行;若需要完整的返回字符串,可以使用 PassThru() 这...
回复

使用道具 举报

千问 | 2015-5-25 16:26:11 | 显示全部楼层
proc_open 用这个也可,&1", 'r');while(!feof($handle)) { $buffer = fgets($handle); echo "$buffer
\n"; ...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行