命令行程序 - 发送'输入'命令

时间:2014-11-04 17:39:52

标签: command-line cmd

我有一个命令行程序,它有一个多选菜单。我可以通过program.exe < input.txt传递参数但是我在发送'Enter'命令时遇到问题(如果我尝试发送任何其他内容,程序会崩溃;例如''字符)。

我输入'All'作为Proc名称。然后再次输出'enter proc name',我必须按Enter键才能继续执行代码。我无法解决的是如何将此Enter发送到该程序。我在input.txt中尝试了一条黑线但是没有用。

while( !end )
{
    for( legal=0; !legal; )
    {
        printf("\tEnter Proc Name: ");

        if( fgets( str, 70, stdin ) == NULL )
        {
            printf("Bye.\n");
            exit(0);
        }
        ret = sscanf(str, "%s", p.name );
        if( ret > 0  || str[0] == '\n' ) legal = 1;
        else printf("Please enter a legal proc name, none, or all\n");
    }
    if( str[0] == '\n' ) {
        end = 1;
    } else if( !strcmp( p.name, "all" )) {
        for( i=0; i < Conf_num_procs( &Cn ); i++ )
            Status_vector[i] = 1;
    } else if( !strcmp( p.name, "none" )) {
        for( i=0; i < Conf_num_procs( &Cn ); i++ )
    Status_vector[i] = 0;
    } else {
        proc_index = Conf_proc_by_name( p.name, &p );
        if( proc_index != -1 ) {
            Status_vector[proc_index] = 1;
        } else printf("Please! enter a legal proc name, none, or all\n");
    }
}

0 个答案:

没有答案