shell和c语言的参数变量传递!(小寿原创)
##############################################################################
//shell向c语言传递;
 
 
#rd_conf读取配置信息;
#!/bin/sh 
conf="update.conf"
 
name=
$1 
value=
$2 
#echo $name $value
 
 
awk -vawk_name="$name"  -F = '{OFS="=";if($1==awk_name) print $2;}' $conf
 
 
//c语言读取shell传递的变量;通过popen管的;
     int rd_conf(char *name,char *value) 
591: {
 
592:         FILE *pp;
 
593:         char cmd[1024];
 
594:         strcat(cmd,"./rd_conf ");
 
595:         strcat(cmd,name);
 
596:         //printf("cmd=%s\r\n",cmd);
 
597:         pp=popen(cmd,"r");
 
598:         fgets(value,20,pp);
 
599:         //printf("%s=%s\r\n",name,value);
 
600:         pclose(pp);
 
601:         return 0;
 
602: }
 
 
################################################################################
//c语言向shell传递;
 
#wr_conf更改字段的值;
#!/bin/sh 
conf="update.conf"
 
name=
$1 
value=
$2 
#echo $name $value
 
 
awk -vawk_name="$name" -vawk_value="$value" -F = '{OFS="=";if($1==awk_name)$2=awk_value; print;}' $conf >tmp~
  
more tmp~ >
$conf 
rm tmp~