termios- POSIX样式tty控件 – Unix特定服务(Python教程)(参考资料)
termios
– POSIX样式tty控件
此模块提供POSIX调用接口以进行tty I / O控制。有关这些调用的完整描述,请参阅termios(3)Unix手册页。它仅适用于那些支持POSIX的Unix版本termios样式安装时配置的I / O控件.
本模块中的所有函数都带有文件描述符fd作为他们的第一个论点。这可以是整数文件描述符,例如sys.stdin.fileno()
返回,或者文件对象,例如sys.stdin
本身.
该模块还定义了使用此处提供的功能所需的所有常量;它们与C中的对应物具有相同的名称。有关使用这些终端控制接口的更多信息,请参阅系统文档.
该模块定义了以下功能:
termios.
tcgetattr
(fd)- 返回一个包含文件描述符fd的tty属性的列表,如下所示:
[iflag, oflag, cflag, lflag, ispeed, ospeed, cc]
其中cc是一个tty特殊字符的列表(每个字符串长度为1,除了索引为VMIN
和VTIME
,这是定义字段的整数)。必须使用cc中定义的符号常量来解释标志和速度以及termios
module
termios.
tcsetattr
//(fd, when, attributes)- 从fd设置文件描述符attributes的tty属性,这是一个像这样的列表由
tcgetattr()
返回。when参数确定何时更改属性:TCSANOW
要立即更改,TCSADRAIN
在传输所有排队输出后更改,或者TCSAFLUSH
发送所有排队输出并删除所有排队输入后更改.
termios.
tcsendbreak
(fd, duration)- 在文件描述符fd上中断。零duration发送休息0.25-0.5秒;非零duration有一个系统依赖的含义.
termios.
tcdrain
(fd)- 等到写入文件描述符fd的所有输出都被传输了
termios.
tcflush
(fd, queue)- 丢弃文件描述符fd。queue选择器指定输入队列的队列:
TCIFLUSH
,输出队列的TCOFLUSH
,或两个队列的TCIOFLUSH
.
termios.
tcflow
(fd, action)- 暂停或恢复文件描述符的输入或输出fd。action参数可以
TCOOFF
暂停输出,TCOON
重启输出,TCIOFF
暂停输入,或TCION
重启输入。
参见
- 模块
tty
- 常用终端控制操作的便捷功能.
例
这是一个提示输入密码并关闭回显的功能。请注意使用单独的tcgetattr()
调用和try
… finally
语句,以确保无论发生什么情况都会恢复旧的tty属性:
def getpass(prompt="Password: "): import termios, sys fd = sys.stdin.fileno() old = termios.tcgetattr(fd) new = termios.tcgetattr(fd) new[3] = new[3] & ~termios.ECHO # lflags try: termios.tcsetattr(fd, termios.TCSADRAIN, new) passwd = input(prompt) finally: termios.tcsetattr(fd, termios.TCSADRAIN, old) return passwd
本站所发布的一切资源仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如果侵犯你的利益,请发送邮箱到 [email protected],我们会很快的为您处理。
超哥软件库 » termios- POSIX样式tty控件 – Unix特定服务(Python教程)(参考资料)
超哥软件库 » termios- POSIX样式tty控件 – Unix特定服务(Python教程)(参考资料)