我看不到SSHv2子系统的打印结果

时间:2012-05-17 21:58:32

标签: c linux ssh

我正在尝试创建一个SSH子系统。 所以我通过添加以下行来配置文件:“/ etc / ssh / sshd_config”:“Subsystem test / home / test”。

以下是测试应用的内容:

int main()
{
        int i=0;
        int j=0;

        printf("Hello world!\n");
        for (j=0;j<10;j++)
        {
            scanf ("%d",&i);
            printf ("Printed :   %d\n",i);
        }
        return 0;
    }

我的问题是,当我从远程ssh连接执行此操作(ssh -2 -s test user @ host)时,我只能输入数据而我看不到打印的文本。 (只有在申请结束后才会打印文本)

如何在我输入之后查看打印文本而不是在应用程序的最后?

1 个答案:

答案 0 :(得分:1)

这是一个缓冲问题吗?尝试调用fflush()来刷新输出。

int main()
{
    int i=0;
    int j=0;

    printf("Hello world!\n");
    fflush(stdout);
    for (j=0;j<10;j++)
    {
        scanf ("%d",&i);
        printf ("Printed :   %d\n",i);
        fflush(stdout);
    }
    return 0;
}