psxiong 发表于 2004-3-4 17:23:31

用php怎么调用linux系统下的命令

我不清楚是不是这样的问法。我所要实现的是:例如通过网页来查看我的一个服务器上都有哪些人登录了,这个在服务器上可以用who命令得到,但是怎么用php实现了。再一个例子,比如我要通过网页查询各个用户提交了多少任务,都运行了些什么程序,运行时间多长,这个在机群上都有相应的简单的程序命令查到,我所要做的就是不要登录服务器,大家直接通过web就可以查询得到。

kkk139 发表于 2004-3-4 18:54:58

`shutdown` ?   "`xxxxx `"应该可以运行shell命令啊

jiangtao9999 发表于 2004-3-5 14:39:31

运行命令可以用下面的三个函数。
但我没有试过,详细怎么使用就不知道了。

函式:exec()
--------------------------------------------------------------------------------
程式执行功能函式库

exec
执行外部程式。

语法: string exec(string command, string , int );

传回值: 字串

函式种类: 作业系统与环境

内容说明

本函式执行输入 command 的外部程式或外部指令。它的传回字串只是外部程式执行后传回的最后一行;若需要完整的传回字串,可以使用 PassThru() 这个函式。

要是参数 array 存在,command 会将 array 加到参数中执行,若不欲 array 被处理,可以在执行 exec() 之前呼叫 unset()。若是 return_var 跟 array 二个参数都存在,则执行 command 之后的状态会填入 return_var 中。

值得注意的是若需要处理使用者输入的资料,而又要防止使用者耍花招破解系统,则可以使用 EscapeShellCmd()。


函式:system()
--------------------------------------------------------------------------------
程式执行功能函式库

system
执行外部程式并显示输出资料。

语法: string system(string command, int );

传回值: 字串

函式种类: 作业系统与环境

内容说明

本函式就像是 C 语中的函式 system(),用来执行指令,并输出结果。若是 return_var 参数存在,则执行 command 之后的状态会填入 return_var 中。同样值得注意的是若需要处理使用者输入的资料,而又要防止使用者耍花招破解系统,则可以使用 EscapeShellCmd()。若 PHP 以模组式的执行,本函式会在每一行输出后自动更新 Web 伺服器的输出缓冲暂存区。若需要完整的传回字串,且不想经过不必要的其它中间的输出介面,可以使用 PassThru()。


函式:passthru()
--------------------------------------------------------------------------------
程式执行功能函式库

passthru
执行外部程式并不加处理输出资料。

语法: string passthru(string command, int );

传回值: 字串

函式种类: 作业系统与环境

内容说明

本函式类似 Exec() 用来执行 command 指令,并输出结果。若是 return_var 参数存在,则执行 command 之后的状态会填入 return_var 中。若输出的资料是二进位的资料,并且需要输出到浏览器中的话,使用本函式就相当合适了。例如使用 pbmplus 工具来执行指令,并传回二进位的图形资料。可以先设定传回资料的标头 (header) 为 Content-type: image/gif,然后呼叫 pbmplus 程式处理图形资料,并将二进位的图形资料直接传回浏览器。

psxiong 发表于 2004-3-5 17:58:18

谢谢提供的思路。
页: [1]
查看完整版本: 用php怎么调用linux系统下的命令