36.9. pty — 伪终端实用程序 — Python 文档
来自菜鸟教程
Python/docs/2.7/library/pty
36.9. 私人有限公司 — 伪终端实用程序
pty 模块定义了处理伪终端概念的操作:启动另一个进程并能够以编程方式从其控制终端写入和读取。
因为伪终端处理高度依赖于平台,所以只有在 Linux 上有代码才能做到这一点。 (Linux 代码应该可以在其他平台上运行,但尚未经过测试。)
pty 模块定义了以下函数:
- pty.fork()
- 叉子。 将孩子的控制终端连接到伪终端。 返回值为
(pid, fd)
。 注意子进程得到 pid 0,而 fd 是 invalid。 父的返回值是子的 pid,而 fd 是连接到子的控制终端(也连接到子的标准输入和输出)的文件描述符。
- pty.openpty()
- 打开一个新的伪终端对,如果可能,使用 os.openpty(),或通用 Unix 系统的仿真代码。 分别返回一对文件描述符
(master, slave)
,分别用于主从端。
- pty.spawn(argv[, master_read[, stdin_read]])
生成一个进程,并将其控制终端与当前进程的标准 io 连接。 这通常用于阻止坚持从控制终端读取的程序。
函数 master_read 和 stdin_read 应该是从文件描述符中读取的函数。 每次调用时,默认值都会尝试读取 1024 个字节。