36.9. pty-伪终端 Util

pty模块定义用于处理伪终端概念的操作:启动另一个进程,并能够以编程方式对其控制终端进行读写。

由于伪终端处理高度依赖平台,因此有代码仅适用于 Linux。 (Linux 代码应该可以在其他平台上运行,但是尚未经过测试.)

pty模块定义以下Function:

  • pty. fork ( )

    • 叉子。将孩子的控制终端连接到伪终端。返回值为(pid, fd)。请注意,孩子的* pid 为 0,而 fd invalid 。父级的返回值是子级的 pid fd *是连接到子级控制终端(以及子级的标准 Importing 和输出)的文件 Descriptors。
  • pty. openpty ( )

    • 打开一个新的伪终端对,如果可能的话,使用os.openpty()或通用 Unix 系统的仿真代码。返回分别用于主端和从端的Pair文件 Descriptors(master, slave)
  • pty. spawn(* argv * [,* master_read * [,* stdin_read *]])

    • 生成一个进程,并将其控制终端与当前进程的标准 io 连接。这通常用于使必须从控制终端读取的程序变得混乱。

函数* master_read stdin_read *应该是从文件 Descriptors 读取的函数。默认值每次try读取 1024 个字节。