zoukankan      html  css  js  c++  java
  • exec函数族:

    使进程执行某一程序。成功无返回值,失败返回 -1

    int execlp(const char *file, const char *arg, ...); 借助 PATH 环境变量找寻待执行程序

    1: 程序名

    2argv0

    3argv1

    ...argvN

    哨兵:NULL

    int execl(const char *path, const char *arg, ...); 自己指定待执行程序路径。

    int execvp();

    ps ajx --> pid ppid gid sid

    #include<stdio.h>

    #include<unistd.h>

    int main(void)

    {

        //使用execl() 来调用其他的程序

         execlp("ls","ls","-a","-l",NULL); // 相当于在程序中调用ls 命令

         printf("error execlp");

         return 0;

    }

    execvp函数

      加载一个进程,使用自定义环境变量 env

    Int execvp( const char* file , const char *argv[] );

    变参形式:

    1...

    2argv[] ( main 函数也是变参函数,形式上等于 int main( int argc , char* argv0,... ) )

    变参终止条件:(1NULL结尾 (2)参数固定

    execvp execlp 参数形式不同,原理一致。

    Char *argv[] = { "ls","-a","-l",NULL};

    Execvp(ls,argv);

     exec函数族的一般规律,exec函数一旦调用成功及执行新的程序,不返回。只有失败的时候才返回,错误值-1

     L (list)  命令行参数列表  execl()

     P( path ) 搜索文件用的path变量

     V( vector ) 使用命令行参数数组  execvp()

     E( environment ) 使用环境变量数组,不适用进程原来的环境变量,设置加载程序运行的环境变量。

  • 相关阅读:
    WEB服务器和应用服务器
    java中乱码问题
    面向对象的特征
    数据库中常见的需注意的问题
    String类
    网络编程
    C#泛型基础
    C#中sealed关键字的作用。
    C#自动属性优缺点分析
    TextView属性(转)
  • 原文地址:https://www.cnblogs.com/love-life-insist/p/14110745.html
Copyright © 2011-2022 走看看