int shellOut(const char *cmd, char *buff, int buffLen)
{
if(cmd == NULL || buff == NULL)
{
return -1;
}
int i = 0, ch = -1;
FILE *fStream = NULL;
if( (fStream = popen(cmd, "r")) == NULL )
{
return -1;
}
i = 0;
while( (ch = fgetc(fStream)) != EOF )
{
buff[i] = ch;
i++;
if(i >= buffLen)
{
break;
}
}
pclose(fStream);
return 0;
}
C语言获取Shell输出
最新推荐文章于 2023-06-30 16:35:04 发布
该函数intshellOut接受一个命令cmd,将命令的输出读入到指定的缓冲区buff中。它使用popen打开命令,fgetc读取每个字符,直到达到缓冲区限制或文件结束。最后,用pclose关闭进程流。
摘要由CSDN通过智能技术生成