相关函数

fork, execle, execlp, execv, execve, execvp

Windows下头文件

#include <process.h>

Linux下头文件

#include <unistd.h>

函数定义

int execl(const char *path, const char *arg, ...);

函数说明

execl()其中后缀"l"代表list也就是参数列表的意思,第一参数path字符指针所指向要执行的文件路径, 接下来的参数代表执行该文件时传递的参数列表:argv[0],argv[1]... 最后一个参数须用空指针NULL作结束。
 

2函数用法

函数返回值

成功则不返回值, 失败返回-1, 失败原因存于errno中,可通过perror()打印
Windows下示例(vs编译):
#include <stdio.h>
#include <process.h>
int main()
{
printf("调用D盘Test目录下的hello.exe, 第一个参数为改应用程序的名称\n");
execl("D:\\Test\\hello.exe","hello");
printf("进程已经被递交给了hello.exe,这里不会再执行");
}
Linux下示例:

示例1

/* 执行 /bin/ls -al /ect/passwd */
#include <unistd.h>/*** File: execl.c**/
main()
{
// 执行/bin目录下的ls, 第一参数为程序名ls, 第二个参数为"-al", 第三个参数为"/etc/passwd"
execl("/bin/ls", "ls", "-al", "/etc/passwd", (char *) 0);
}

示例2

#include <unistd.h>/*** File: execl.c**/
int main()
{
char args[]=" -l";
// 执行/bin目录下的ls, 第一参数为程序名ls, 第二个参数为"-al", 第三个参数为"/etc/"
execl("/bin/ls","ls","-al","/etc/",NULL);
return 0;

最新文章

  1. git知识点整理
  2. 爬虫的入门以及scrapy
  3. VS2012使用Git并连接到osc@git
  4. rcync 备份命令
  5. How to install Shadow•socks in CentOS7
  6. ximalaya
  7. Struts 2学习笔记——拦截器相关
  8. 由setTimeout()里的this引出的this
  9. Thread’s start method and run method
  10. html、js简单实现含中文csv文件下载(后端为django)
  11. 仿照 ButterKnife 的 Android 注解实例
  12. 【性能提升神器】Covering Indexes
  13. [转]npm、 cnpm、yarn
  14. 06-Git-Linux命令
  15. CSS布局总结及实际应用中产生的问题
  16. PHP 中的对象传递
  17. Maven启动代理服务器
  18. (六)Linux下的压缩命令
  19. discuz修改附件出售用其他积分,与帖子不一样
  20. HBase 入门笔记-安装篇

热门文章

  1. 关于java的访问修饰符权限
  2. PTA 数组循环右移
  3. Dynamics CRM 在表单上显示更改历史记录(审核历史记录)
  4. HTML5和CSS3提高
  5. 击鼓传花联想到了Java设计模式:责任链模式
  6. Java学习IO流第一天
  7. 关于SpringBoot结合mybatis后遇到的坑
  8. 034- do_while语句
  9. Nginx隐藏式跳转(浏览器URL跳转后保持不变) - 运维笔记
  10. 【synchronized锁】通过synchronized锁 反编译查看字节码指令分析synchronized关键字修饰方法与代码块的区别