execle问题
Permission denied出现是怎么回事?应该不是权限不足,请帮忙分析下原因
#include <unistd.h>
#include <errno.h>
#include <sys/wait.h>
char *env_init[] = { "USER=unknown ", "PATH=/tmp ", NULL };
int
main(void)
{
pid_t pid;
if ((pid = fork()) < 0) {
perror( "fork error ");
} else if (pid == 0) {
if (execle( "/usr/test ", "echoall ", (char *)0, env_init) < 0)
perror( "execle error ");
}
exit(0);
}
运行结果:
execle error
: Permission denied
[解决办法]
第一个参数为 "路径+可执行文件名 "