C语言编程中实现shell命令调用方法

1、system(执行shell 命令)

    相关函数 fork,execve,waitpid,popen
    表头文件 #include<stdlib.h>
    定义函数 int system(const char * string);

#include<stdlib.h>
main()
{
    system(“ls -al /etc/passwd /etc/shadow”);
    return 0;
}

2、popen(建立管道I/O)

    相关函数 pipe,mkfifo,pclose,fork,system,fopen
    表头文件 #include<stdio.h>
    定义函数 FILE * popen( const char * command,const char * type);

#include<stdio.h>

main()
{
    FILE * fp;
    char buffer[80];

    fp=popen(“cat /etc/passwd”,”r”);
    fgets(buffer,sizeof(buffer),fp);
    printf(“%s”,buffer);
    pclose(fp);
    
    return 0;
}

 

3、使用vfork()新建子进程,然后调用exec函数族

#include<unistd.h>

main()
{
    char * argv[ ]={“ls”,”-al”,”/etc/passwd”,(char*) };
    if (vfork() = =0) {
        execv(“/bin/ls”,argv);
    } else {        
        printf(“This is the parent process\n”);
    }

    return 0;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值