linux exec使用方法,求解
这是小弟写的程序,用意是显示出home/ts目录下的所有文件,其实就是一个简单到验证exec函数程序,但是每次都提醒我使用错误,小弟不才,刚开始学,望大神指教。/谢谢了。...
这是小弟写的程序,用意是显示出home/ts目录下的所有文件,
其实就是一个简单到验证exec函数程序,但是每次都提醒我使用错误,
小弟不才,刚开始学,望大神指教。/谢谢了。/
不知道图片能不能显示出来。
程序是:
#include<unistd.h>
#include<stdio.h>
#include<stdlib.h>
main()
{
if( ( execlp("learning_mj","ls","-a","/home/ts", NULL) ) < 0)
{
printf("exec error\n");
exit(1);
}
}
谢谢各位大神了! 小弟实在不知道哪里出问题了。 展开
其实就是一个简单到验证exec函数程序,但是每次都提醒我使用错误,
小弟不才,刚开始学,望大神指教。/谢谢了。/
不知道图片能不能显示出来。
程序是:
#include<unistd.h>
#include<stdio.h>
#include<stdlib.h>
main()
{
if( ( execlp("learning_mj","ls","-a","/home/ts", NULL) ) < 0)
{
printf("exec error\n");
exit(1);
}
}
谢谢各位大神了! 小弟实在不知道哪里出问题了。 展开
1个回答
展开全部
函数原型 int execlp(const char *file, const char *arg, ...);
#include<unistd.h>
#include<stdio.h>
int main(void)
{
if( ( execlp("ls","-a","/", NULL) ) < 0) /*参数错误,根据原型来看,file的位置应该是你要的ls*/
{
printf("exec error\n");
exit(1);
}
return 0;
}
#include<unistd.h>
#include<stdio.h>
int main(void)
{
if( ( execlp("ls","-a","/", NULL) ) < 0) /*参数错误,根据原型来看,file的位置应该是你要的ls*/
{
printf("exec error\n");
exit(1);
}
return 0;
}
追问
第一个参数不应该是我输入命令行时的位置吗?、
追答
这个和main的argv参数不同,在linux下你可以用输入man execlp来差可能exec这个系列函数的用法
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |