Computer >> Máy Tính >  >> Lập trình >> Python

Tiện ích đầu cuối giả trong Python

Pty mô-đun tiện ích Pseudo-terminal được định nghĩa để xử lý các khái niệm giả thiết bị đầu cuối. Sử dụng điều này, chúng tôi có thể bắt đầu một quy trình khác và cũng có thể đọc hoặc ghi từ điều khiển thiết bị đầu cuối bằng các chương trình.

Mô-đun này mang tính định hướng nền tảng cao. Chúng ta nên sử dụng hệ thống UNIX để thực hiện các hoạt động này.

Để sử dụng mô-đun pty, chúng ta nên nhập nó bằng -

import pty

Có một số mô-đun của mô-đun pty, đây là -

Phương thức pty.fork ()

Phương pháp này được sử dụng để kết nối thiết bị đầu cuối điều khiển trẻ em với thiết bị đầu cuối giả. Phương thức này trả về pid và fd. Tiến trình con nhận pid 0, nhưng fd không hợp lệ. Giá trị trả về của cha là pid của tiến trình con và fd chứa thiết bị đầu cuối điều khiển con.

Phương thức pty.openpty ()

Phương thức này được sử dụng để mở một cặp đầu cuối giả mới. Nó trả về một bộ mô tả tệp cho cái chính và cái phụ.

Phương thức pty.spawn (argv [, master_read [, stdin_read]])

Quy trình sinh sản được sử dụng để kết nối thiết bị đầu cuối điều khiển của nó với tiêu chuẩn quy trình hiện tại io. Master_read và stdin_read đọc từ bộ mô tả tệp. Kích thước mặc định là 1024 byte.

Mã mẫu

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)))

Đầu ra

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