当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Ruby PTY.open用法及代码示例


本文简要介绍ruby语言中 PTY.open 的用法。

用法

open → [master_io, slave_file]
open {|(master_io, slave_file)| ... } → block value

分配一个 pty (pseudo-terminal)。

在块形式中,产生一个包含两个元素的数组 (master_io, slave_file),块的值从 open 返回。

IO File 如果尚未关闭,则会在块完成后关闭。

PTY.open {|master, slave|
  p master      #=> #<IO:masterpty:/dev/pts/1>
  p slave      #=> #<File:/dev/pts/1>
  p slave.path #=> "/dev/pts/1"
}

在非块形式中,返回一个二元素数组 [master_io, slave_file]

master, slave = PTY.open
# do something with master for IO, or the slave file

两种形式的参数是:

master_io

pty 的主人,作为 IO

slave_file

pty 的奴隶,作为 File 。终端设备的路径可通过slave_file.path获得

IO#raw! 可用于禁用换行符转换:

require 'io/console'
PTY.open {|m, s|
  s.raw!
  # ...
}

相关用法


注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 PTY.open。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。