Linux 进程替换(exec函数)实现代码

 更新时间:2017年05月22日 14:22:39   投稿:lqh  
这篇文章主要介绍了Linux 进程替换(exec函数)实现代码的相关资料,需要的朋友可以参考下

Linux 进程替换(exec函数)实现代码

  # include<stdio.h>   
  #include<stdlib.h> 
  #include<unistd.h>  
  #include<fcntl.h>  
  #include<sys/types.h>
  #include<sys/stat.h>                                                  
  #include<string.h>  
  int main()     
   {         
    pid_t id=fork(); 
  if(id==0)      
   {        
   printf("child is running\n");
   sleep(1);    
  char* env[]={"MYENV=/A/B/C/D/AAAA",NULL};
  char* argv[]={"ls","-l","-n","-i",NULL};
 // execl("/bin/ls","ls","-l","-n","-i",NULL);
  // execlp("ls","ls","-l","-n","-i",NULL);
 //  execv("/bin/ls",argv); 
  // execvp("ls",argv);
            
             
   // execle("./myenv","myenv",NULL,env);
      execve("./myenv",argv,env);    
      printf("child id done\n");  //exec成功的话不执行此语句
      exit(1);   
    }               
    else                                                        
    {         
       pid_t ret=waitpid(id, NULL,0);
      if(ret>0)  
       {      
        printf("father wait success\n"); }
         else{  
          printf("child quit not normal\n");
            
       }   }   return 0;                                              }
 

                  

下图就是execl execlp execv execvp的结果图


下图是execle execve的结果图

感谢阅读,希望能帮助到大家,谢谢大家对对本知道支持!

相关文章

  • linux常用命令小结,排查问题效率高10倍

    linux常用命令小结,排查问题效率高10倍

    这篇文章主要为大家详细介绍了linux中常用的6个命令,可以让我们排查问题效率高10倍,文中的示例代码讲解详细,感兴趣的小伙伴可以参考下
    2023-08-08
  • Shell脚本用for循环遍历参数的方法技巧

    Shell脚本用for循环遍历参数的方法技巧

    今天小编就为大家分享一篇关于Shell脚本用for循环遍历参数的方法技巧,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • Linux中使用locate和find进行不区分大小写的文件搜索

    Linux中使用locate和find进行不区分大小写的文件搜索

    在日常使用计算机的过程中,尤其是处理大量文件时,快速找到特定文件变得尤为重要,Linux系统提供了许多命令行工具,其中“locate”和“find”是两个常用的文件搜索工具,本文给大家介绍了如何在Linux中使用locate和find进行不区分大小写的文件搜索
    2024-05-05
  • 开发者常用及实用Linux Shell命令备忘录(小结)

    开发者常用及实用Linux Shell命令备忘录(小结)

    这篇文章主要介绍了开发者常用及实用Linux Shell命令备忘录(小结),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11
  • linux 中ls命令详解

    linux 中ls命令详解

    ls命令是linux下最常用的命令。ls命令就是list的缩写。下面通过本文给大家分享linux 中ls命令详解,感兴趣的朋友一起看看吧
    2017-09-09
  • shell 基本计算、逻辑运算、位运算详解

    shell 基本计算、逻辑运算、位运算详解

    Shell 提供大量的基本运算操作,在脚本中非常有用。Shell 对您提供的算术表达式求值,执行运算展开式,此时使用得出的结果替换表达式
    2012-09-09
  • Linux常用ls, alias基础命令详解

    Linux常用ls, alias基础命令详解

    这篇文章主要介绍了Linux常用ls, alias基础命令详解,ls命令 的作用是列举目录文件信息,alias查看定义的别名,具体内容详情大家参考下本文
    2018-05-05
  • shell按行读取文件的3种方法

    shell按行读取文件的3种方法

    这篇文章主要介绍了shell按行读取文件的3种方法,需要的朋友可以参考下
    2014-04-04
  • Linux nc命令使用示例

    Linux nc命令使用示例

    nc是netcat的简写,是一个功能强大的网络工具,有着网络界的瑞士军刀美誉,nc命令在linux系统中实际命令是ncat,nc是软连接到ncat,这篇文章主要介绍了Linux nc命令使用示例,需要的朋友可以参考下
    2023-03-03
  • Bash的For循环(根据每次递增的数)

    Bash的For循环(根据每次递增的数)

    需要执行一个命令,每次消除500个id,通常写的是递增1的,记一笔,怕忘了
    2013-08-08

最新评论