Pty什么意思

"pty" 是 "pseudo-terminal" 的縮寫,在計算機科學中,它指的是一個虛擬的終端設備,用於在命令行界面中模擬真實的終端。pty 通常用於遠程登錄會話,例如通過 SSH 連線。

在 Unix 和類 Unix 作業系統中,pty 是由核心提供的一種機制,用於在用戶空間進程(例如 shell)和控制這些進程的程式(例如終端模擬器)之間提供通信通道。pty 允許 shell 認為它在一個真實的終端上運行,而終端模擬器(如 xterm、Konsole 或 GNOME Terminal)則認為它連線到一個真實的終端。

pty 通常分為兩部分:

  1. 主控偽終端(PTY master):這是與終端模擬器通信的部分,終端模擬器將其視為一個真實的終端設備。
  2. 從屬偽終端(PTY slave):這是與 shell 或其他命令行程式通信的部分,這些程式將其視為一個真實的終端設備。

當用戶通過 SSH 或類似的方式連線到遠程系統時,遠程系統會創建一個 pty,以便用戶可以互動式地運行命令。用戶在本地終端模擬器中輸入的字元會通過 pty 傳送到遠程 shell,而遠程 shell 的輸出則會通過 pty 傳送回本地終端模擬器。

pty 還用於其他一些場景,例如在後台運行命令並將輸出重定向到檔案,或者在腳本中模擬互動式輸入和輸出。