在C语言中调用Unix Shell脚本。
Posted bywayboy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在C语言中调用Unix Shell脚本。相关的知识,希望对你有一定的参考价值。
最近项目要求需要在C语言中调用shell脚本。
static int execute_script(const char * filename)
#if defined(_WIN32) || defined(_WIN64)
//
printf("EXECUTE FILE.... %s\\n",filename);
#else
pid_t pid = 0;
if(0 == (pid = fork()))
if(0 == access("/bin/sh", 0))
execl("/bin/sh", "sh", "-c", filename,NULL);
if(0 == access("/bin/bash", 0))
execl("/bin/bash","bash", filename,NULL);
exit(0);
return pid;
#endif
附上一个换行模式转换函数
int lfmode_tounix(char * str, int len)
char c, * p=str, *p1=str;
while(len--)
c= *p++;
switch(c)
case '\\r':
if(*p != '\\n') // only macintosh mode convert to unix mode.
*p1++ = '\\n';
// default skip cr.
break;
default:
*p1++ = c;
break;
*p1='\\0';
return p1-str;
以上是关于在C语言中调用Unix Shell脚本。的主要内容,如果未能解决你的问题,请参考以下文章