tset 命令
用途
初始化终端。
语法
tset [ -e C ] [ -k C ] [ -i C ] [ - ] [ -s ] [ -I ] [ -Q ] [ -m [标识符 ] [ TestBaudRate ] :类型 ] ... [ 类型 ]
描述
tset 命令可设置终端特征。 它执行终端依赖性的处理,比如:设置擦除和杀死字符、设置或复位延迟以及发送任何需要的序列以正常初始化终端。
tset 命令首先确定所涉及的终端类型(由 Type 参数指定)。 然后执行必要的初始化和方式设置。 附加在每个端口上的终端类型在对象数据管理器(ODM)数据库内指定。 terminfo 数据库包含可能的终端类型名称。 如果端口未永久连接到特定终端 (即,未硬连接) ,那么 tset 命令将为其提供相应的通用标识,例如dialup.
未指定标志时, tset 命令从 TERM 环境变量中读取终端类型并重新初始化终端。
当 tset 命令用于启动脚本( .profile 文件用于 sh 用户或 .login 文件用于 csh 用户)时,脚本应包括通常使用在未硬连线的端口上终端的类型的信息。 这些端口在 ODM 数据库中标识为dialup, plugboard,或ARPANET等等 指定通常哪种终端类型可用在这些端口上,使用 -m 标志(其后跟随适当的端口类型标识),一种可选的波特率规范和终端类型。 如果指定一个以上映射,那么优先使用第一个适用的映射。 缺少的端口类型标识匹配所有标识。 任何 terminfo 数据库给出的备用一般名称都可用作标识。
可在 tset 命令中指定波特率,如同 stty 命令一样。 波特率与诊断输出速度(可能为控制终端)是可以比较的。 波特率测试可以是下列字符的任一组合:
- .(终止符)
- @(at 符号)
- <(小于符号)
- !(感叹号)
该@(在标志处) 代表前置位置处,!(感叹号) 反转测试感。 为避免元字符出现问题,请将 -m 标志参数放在内部''(单引号)。 csh 命令的用户还必须将\(反斜杠)!(感叹号)。
以下示例将终端类型设置为adm3a如果正在使用的端口是以大于以下值的速度进行拨号:300波德 它将终端类型设置为dw2如果端口是速度为300波特或更低:
tset -m 'dialup>300:adm3a' -m dialup:dw2 -m 'plugboard:?adm3a'如果 Type 参数以? 开头 (问号) ,系统会提示您验证类型。 使用指定类型,按 Enter 键。 使用不同类型,输入需要的类型。 在给出的示例中,系统会提示您验证adm3插件端口类型。
如果无映射应用且命令行给出最终类型选项(没有以 -m 标志开头),使用该类型。 另外,缺省终端类型是 ODM 数据库中标识的类型。 硬连线端口都应在 ODM 数据库中标识。
已知终端类型时, tset 命令参与终端驱动方式设置。 通常包括设置:
- 终端的初始化序列
- 单字符擦除和 (可选) 行终止 (全行擦除) 字符
- 特殊字符延迟
终端初始化序列传输过程中会关闭制表符和换行扩展。
在可退格但不能叠印的终端上(如 CRT),且当擦除字符是缺省擦除字符(标准系统上的 #)时,擦除字符替换为退格符(Ctrl-H)。
标志
| 项 | 描述 |
|---|---|
| -e C | 将擦除字符设置为由 C 参数指定的字符。缺省值为退格字符。 |
| -I | 禁止传输终端初始化字符串。 |
| -i C | 将中断字符设置为由 C 参数指定的字符。 C 缺省为 ^C(插入符号 C)。 该 ^(插入标记字符)字符也可用于此选项。 |
| -k C | 将行杀死字符设置为由 C 参数指定的字符。 C 参数缺省为 ^X(插入符号 X)。 该 ^(插入标记字符)字符也可用于此选项。 |
| -m IdentifierTestbaudRate:类型 | 指定哪种终端类型(在 Type 参数中)通常可用在 Identifier 参数中标识的端口上。 缺少标识匹配所有标识。 可选择在 TestBaudRate 参数里指定波特率。 |
| -q | 禁止打印Erase set to和Kill set to消息。 |
| -s | 打印序列 csh 命令,该命令基于决定终端的名称初始化 TERM 环境变量。 |
| - | 决定终端的名称按标准输出形式输出。 这是 TERM 环境变量。 |
示例
- 现在,您是 2621 终端。 除非您一直是 2621 终端,否则不要在您的 .profile 文件中使用下列示例。
export TERM; TERM=\'tset \- 2621\' - 您在家里有一个 h19 终端可以拨号,但您的办公终端是硬连线的,并在 ODM 数据库中指定。
export TERM; TERM=\'tset \- \-m dialup:h19"' - 您有一个将所有内容连接到所有内容的交换机,这使您几乎无法键入要进入的端口。 您可在办公室以 9600 波特使用 vt100 而以 1200 波特在 2621 上从家中拨号到转换端口。 有时您在工作中使用不同的终端。 高速下,您想验证您的终端类型,但在 1200 波特下,您始终在 2621 上。 注意引号怎样保护由 shell 解释的大于符号和问号。
如果没有任何条件,使用 ODM 数据库中指定的终端类型。export TERM; TERM=\'tset \- \-m 'switch>1200:?vt100' \-m 'switch<=1200:2621' - 如果您始终在许多不同终端上以相同的波特率拨号,那么以下条目适用。 您最常见的终端是adm3a。将始终提示您验证终端类型,缺省为adm3a.
export TERM; TERM=\'tset \- \?adm3a\' - 如果未正确安装 ODM 数据库,并且您希望完全按波特率键,请输入:
export TERM; TERM=\'tset \- \-m 'switch>1200:?vt100' \-m 'switch<=1200:2621' - 您在 Concept100上以 1200 波特或更少的方式拨号,有时是通过交换机端口拨号,有时是通过常规拨号。 使用不同的终端以超过 1200 的速度通过转换端口,通常是办公室里的终端即 vt100。 然而,有时您从大学通过 ARPANET 登录;这时您在仿真 dm2500 的 ALTO 上。 经常登录不同的硬连接端口,如控制台,这些端口都正确输入到 ODM 数据库中。 要设置擦除字符为 Ctrl-H、杀死字符为 Ctrl-U,请输入:
这也可阻止 tset 命令打印下列行:export TERM TERM=\'tset \-e \-k(hat)U \-Q \- "-m 'switch<1200:concept100' "-m 'switch:?vt100' \-m dialup:concept100 "1-m arpanet: dm2500"'Erase set to Backspace, Kill set to Ctrl-U - 要将擦除字符设置为控制字符,请输入:
tset -e ^Y
文件
| 项 | 描述 |
|---|---|
| /usr/share/lib/terminfo | 包含终端能力数据库。 |