我正在运行一个通过 ssh session 运行的程序。这意味着我使用 putty 连接到 linux,程序启动,使用/etc/bash.bashrc 文件。在某个时候程序应该结束并随之结束通过 putty 的 ssh session 应该断开连接。 直到现在我用下面的代码做了什么,但它不起作用:程序退出,并停留在 linux shell 中,这意味着 putty 已连接。我期望的是命令“exit”结束 putty ssh session .
char file_name[20];
pid_t pid = fork();
if (pid == 0)
{
printf("Starting vi\r\n");
char external_cmd[200] = "vi ";
strcat(external_cmd, file_name);
system(external_cmd);
} else
{
waitpid(pid,0,0);
printf("Exit..\r\n");
system("exit");
}
感谢您的帮助。
最佳答案
最简单的解决方案是使用 exec
启动您的 C 程序,以便它替换 shell。 SSH session 会在程序退出时自然结束。
$ exec your_program
关于c - 使用 C 退出到 linux 的 ssh session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38005490/