输出到控制台和txt文件

时间:2019-06-19 19:22:48

标签: c unix

我认为这是用C语言编写的,老实说,我不知道如何识别(如果有人可以提供一些建议,那将是很好的)。在控制台中运行命令 rpt dumpvars 1234 时,它将机器/节点1234的变量返回到屏幕。我希望将相同的数据输出到variable.txt文件。我可以添加一个简单的班轮吗?

文件为located here

我要获取的数据部分可以在7590-7623行中找到,如下所示:

/*
* Display a node's main channel variables from the command line 
*/
static int rpt_do_showvars(int fd, int argc, char *argv[])
{
int i,thisRpt = -1;
struct ast_var_t *newvariable;

if (argc != 3) return RESULT_SHOWUSAGE;
for(i = 0; i < nrpts; i++)
{
    if(!strcmp(argv[2], rpt_vars[i].name))
    {
        thisRpt = i;
        break;
    } 
} 

if (thisRpt < 0)
{
    ast_cli(fd, "Unknown node number %s.\n", argv[2]);
    return RESULT_FAILURE;
} 
i = 0;
ast_cli(fd,"Variable listing for node %s:\n",argv[2]);
ast_channel_lock(rpt_vars[thisRpt].rxchannel);
AST_LIST_TRAVERSE (&rpt_vars[thisRpt].rxchannel->varshead, newvariable, 
entries) {
    i++;
    ast_cli(fd,"   %s=%s\n", ast_var_name(newvariable), 
ast_var_value(newvariable));
}
ast_channel_unlock(rpt_vars[thisRpt].rxchannel);
ast_cli(fd,"    -- %d variables\n", i);
return(0);
}

0 个答案:

没有答案