摘录自这里喔
就假如有一个交互式的程序跑在/dev/pts/1上,但是这个交互程序不是很完善,没有类似shell的条件语句,那么我就可以通过这种方式,用另一个tty跑的shell来控制各种循环语句,生成对应的命令写给私有交互程序,就像你自己通过键盘输入一样。
#include <sys/ioctl.h>
#include <termios.h>
#include <stdio.h>
#include <stdlib.h>
void stackchar(char c)
{
if (ioctl(0, TIOCSTI, &c) < 0) {
perror("ioctl");
exit(1);
}
}
int main(int argc, char *argv[])
{
int i, j;
char c;
for (i = 1; i < argc; i++) {
if (i > 1) stackchar(' ');
for (j=0; (c = argv[i][j]); j++) {
stackchar(c);
}
}
stackchar('\n');
exit(0);
}