php 执行系统命令的方法
作者:bea
代码如下: 代码如下: #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 "; u
代码如下:
代码如下:
#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
",strcat(cmd,argv[1]));
//exit(0);
//printf("uid:%un. eudi=%un
",getuid(),geteuid());
if(setreuid(euid,uid))
perror("setreuid");
//printf("uid:%un. eudi=%un
",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);
有用 | 无用
代码如下:
#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
",strcat(cmd,argv[1]));
//exit(0);
//printf("uid:%un. eudi=%un
",getuid(),geteuid());
if(setreuid(euid,uid))
perror("setreuid");
//printf("uid:%un. eudi=%un
",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 file_get_contents 函数超时的几种解决方法
- 一个PHP数组应该有多大的分析
- PHP UTF8编码内的繁简转换类
- php 验证码制作(网树注释思想)
- PHP PDO函数库(PDO Functions)
- php PDO中文乱码解决办法
- PHP 配置文件中open_basedir选项作用
- PHP form 表单传参明细研究
- php与php MySQL 之间的关系
- php 图片上传类代码
- PHP源码之 ext/mysql扩展部分
- php 小乘法表实现代码
- php at(@)符号的用法简介
- php str_pad 函数用法简介
- php strlen mb_strlen计算中英文混排字符串长度
- UTF8编码内的繁简转换的PHP类
- PHP 程序授权验证开发思路
- php 论坛采集程序 模拟登陆,抓取页面 实现代码
- 程序员编程十条戒律