linux C 调用shell程序执行

linux C 调用shell程序执行
#include<stdio.h>
#include <unistd.h>
#include <sys/types.h>
#include <stdlib.h>
#include <sys/prctl.h>
#include <signal.h>

int main()
{
pid_t pid;
char *cmd="bash testshell.sh";
//FILE *fResult=popen("/bin/bash -c testbash.sh","r");
//fResult.close();
pid=fork();
if(pid>0)
        exit(0);
else if(pid==0)
{

        //prctl(PR_SET_PDEATHSIG,SIGKILL);
        execl("/bin/bash","/bin/bash","-c",cmd,NULL);
        exit(0);
}
else if(pid<0)
{
        printf("create faild\n");
        exit(1);
}
return 0;
}
linux C 调用shell程序执行

testshell.sh文件

linux C 调用shell程序执行
date>testshell_log.log
echo "----------------------------">>testshell_log.log
java -jar TestOracle.jar>>testshell_log.log
echo "----------------------------">>testshell_log.log
date>>testshell_log.log>>testshell_log.log
linux C 调用shell程序执行

在shell文件中可以执行各种linux命令,也可以写 if else fi 语句

linux C 调用shell程序执行

上一篇:Eclipse调试Bug的七种常用技巧


下一篇:BFS在ACM中的原理和应用