php 执行系统命令的方法

yipeiwu_com7年前PHP代码库
代码如下:
复制代码 代码如下:

#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <unistd.h>
#include <string.h>

int main(int argc,char * argv[])
{
    uid_t uid,euid;
    char cmd[1024]="chmod -R 777 ";
    uid =getuid();
    euid = geteuid();


    //printf("param %s\n",strcat(cmd,argv[1]));
    //exit(0);
    //printf("uid:%un. eudi=%un\n",getuid(),geteuid());

    if(setreuid(euid,uid))
        perror("setreuid");

    //printf("uid:%un. eudi=%un\n",getuid(),geteuid());    

system(strcat(cmd,argv[1]));
    return 0;

}

现在说下,在linux下面,gcc编译,以及复权的问题:
执行
gcc -Wall -o phpchmod phpchmod.c
执行
chmod u+s ./phpchmod
php代码的使用:
复制代码 代码如下:

$chmod_line = dirname(__FILE__)."/phpchmod ./dest_dir/";
system($chmod_line);

相关文章

微信公众平台开发教程⑥ 微信开发集成类的使用图文详解

微信公众平台开发教程⑥ 微信开发集成类的使用图文详解

本文实例讲述了微信公众平台开发之微信开发集成类的使用。分享给大家供大家参考,具体如下: 背景   这几天又在接触微信PHP方面的开发,认为之前写的文章确实有些乱,刚好发现了一...

php magic_quotes_gpc的一点认识与分析

blankyao 说“学习的过程就是不断的发现错误,不断的改正错误”; 先看下手册上怎么说的吧! 对一般人来说看下前两段就可以了 Magic Quotes 代码: Magic Quote...

PHP实现将浏览历史页面网址保存到cookie的方法

本文实例讲述了PHP实现将浏览历史页面网址保存到cookie的方法。分享给大家供大家参考。具体如下: 将浏览历史页面网址保存到cookie,大致的思路如下面的代码,与实际应用有些差别。...

php中使用in_array() foreach array_search() 查找数组是否包含时的性能对比

php中使用in_array() foreach array_search() 查找数组是否包含时的性能对比

判断某字符是否包含与某于数组中,方法有很多,刚学习php的新手们估计偏向于使用循环来解决,对于一般的小网站来说,这种解决方案是不会出现什么大问题的。但就性能来说,这种方法不是最好的方法,...

PHP应用跨时区功能的实现方法

PHP中要实现一个跨时区的应用,也就是不同时区登录的用户需要看到自己时区的时间,同时也要能够进行时区的切换。 这里的思路是,系统中所有存储的时间都是GMT(UTC)时间,用户登录时,根据...