伪终端实用程序模块pty定义为处理伪终端概念。使用此功能,我们可以启动另一个过程,也可以使用程序从控制终端读取或写入。
该模块高度面向平台。我们应该使用UNIX系统执行这些操作。
要使用pty模块,我们应该使用-导入它
import pty
pty模块中有一些模块,它们是-
此方法用于将子控制终端连接到伪终端。此方法返回pid和fd。子进程的pid为0,但fd无效。父级的返回值是子进程的pid,fd持有子级控制终端。
此方法用于打开新的伪终端对。它返回主机和从机的文件描述符。
生成过程用于将其控制终端与当前过程标准io连接。从文件描述符读取master_read和stdin_read。默认大小为1024字节。
import pty, os def process_parent_child(): (process_id, fd) = pty.fork() print("The Process ID for the Current process is: " + str(os.getpid())) print("The Process ID for the Child process is: " + str(process_id)) process_parent_child() master, slave = pty.openpty() print('Name of the Master: ' + str(os.ttyname(master))) print('Name of the Slave: ' + str(os.ttyname(slave)))
输出结果
The Process ID for the Current process is: 12508 The Process ID for the Child process is: 12509 Name of the Master: /dev/ptmx Name of the Slave: /dev/pts/2