码迷,mamicode.com
首页 > 系统相关 > 详细

孙其功陪你学之——如何将shell命令的返回值赋值给应用程序的变量

时间:2015-04-16 15:45:28      阅读:203      评论:0      收藏:0      [点我收藏+]

标签:路由器   shell   mips   应用程序   

如何将shell命令的返回值赋值给应用程序的变量。

博主最近做了个路由器的项目,需要得到路由器现在网络状态和参数,使用UCI get 获得,

但是使用了system(“UCI get ****”),之后,获得的参数直接在终端打印输出了,应用程序中无法获得

返回的参数。以下是我的解决方案。

#include <stdlib.h>

#include <stdio.h>
#include <string.h>
char buf[512];
char* uciget(char option[])
{
FILE   *stream; 
memset( buf, ‘\0‘, sizeof(buf) );
    stream = popen( option, "r" ); 
    fread( buf, sizeof(char), sizeof(buf), stream);
buf[strlen(buf)-1]= ‘\0‘;
    pclose(stream);
return buf;
}
int main(void) 


printf("%s\n",uciget("uci get network.wan.proto"));
printf("%s\n",uciget("uci get wireless.@wifi-iface[0].ssid"));
  return 1;
 }

孙其功陪你学之——如何将shell命令的返回值赋值给应用程序的变量

标签:路由器   shell   mips   应用程序   

原文地址:http://blog.csdn.net/a350203223/article/details/45075169

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!