execlp函数详解

execlp
从PATH 环境变量中查找文件并执行

定义:
int execlp(const char * file,const char * arg,……); 

1.参数1为要加载的程序的名字(可执行文件名),参数2为argv[0],参数3为argv[1]…,最后一个参数一定是NULL
2.特别说明:第二个参数(argv[0])可以写任何东西,但是其他参数不可以乱写。
3.该函数通常用来调用系统程序,如,ls, date, cp, cat等
4.成功无返回,失败返回-1

execlp("mv","mv","a.c","b.c",NULL);
 //"mv"  即将执行的新的程序的名字,可以有路径修饰

 //"mv" "a.c" "b.c" NULL 这个程序在命令行上执行的具体过程,多写一个NULL,代表命令行上的参数结束                
                      


#include "my.h"

int main(int argc, const char *argv[])
{
	execlp("ls","ls","/home/linux/22062班/",NULL);
	//一旦执行完execlp函数,立刻会去执行新的程序,新的程序会替换当前程序 代码段 数据段 堆 栈
	printf("11111111111\n");//不会被打印,因为调用完execlp函数,当前进程被ls进程换血
	return 0;
}

//execlp 经常与多进程组合使用,用一个子进程单独执行execlp程序

    
 

 

  • 13
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值