与另一个用户对话。
talk {User | User@Host | Host!User | Host.User | Host:User } [ Tty ] [ Pty ]
/usr/bin/talk 命令允许同一主机或不同主机上的两个用户进行交互式对话。talk 命令在每个用户的显示器上打开发送窗口和接收窗口。这样每个用户在 talk 命令显示另一个用户正在输入的内容时能够在发送窗口输入。
为了启动对话,本地用户执行 talk 命令,并且指定远程用户的登录标识。远程用户的登录标识可包含 NLS 字符。如果远程用户在远程主机上,还必须以下列方式之一指定主机名:
User@Host Host!User Host.User Host:User
使用完整域名时,指定用户和主机的唯一有效格式是 User @Host。例如,michael@host17.dev.ibm.com 启动与 dev.ibm.com 域中的主机 host17 上的用户 michael 的对话。
当本地用户启动对话时,会向远程用户发送消息,邀请其参加对话。如果本地用户也指定了 tty,则只会向指定的终端发送邀请消息。否则,邀请会发送到远程用户的登录终端。这通常是控制台,但也可以是另一个终端。一旦接收到邀请,talk 命令会在本地用户的终端上显示两个窗口,并且显示进度信息,直到远程用户回应邀请。
注:如果远程用户正在运行 AIXwindows,并且没有打开其它终端,则 talk 命令无法发送邀请。
为开始对话,远程用户也必须在任一终端上执行 talk 命令,并且指定本地用户的帐户名称和主机名,如果适当的话。远程用户接受邀请时,talk 命令在每个用户的终端上显示两个窗口。其中一个窗口显示本地用户输入的内容;另一个窗口显示远程用户输入的内容。要结束对话,每个用户可按下中断(Ctrl-C)按键顺序,同时关闭连接。可以使用 stty 命令来显示和修改中断按键顺序。
如果对话中的用户使用本地语言支持(NLS)功能的话, 那么他们的终端必须支持打印 NLS 字符。使用日语汉字功能的对话也是这样;所用的终端必须支持打印日语汉字字符。
talk 命令需要绑定到一个有效地址。远程机器的主机名必须绑定到工作网络接口,该接口可以被其它的网络命令,如 ping 命令使用。如果机器没有网络接口,即单机,那么必须将其主机名绑定到回送地址(127.0.0.1)以使 talk 命令可以运行。例如,在单机上名为 local 和 remote 的两个用户能够使用 talk 命令启动对话,输入:
talk remote@loopback
用户 remote 对此作出反应:
talk local@loopback
要禁止 talk 命令邀请,远程用户可发出 mesg 命令。
注:talk 命令使用 Talk 4.3 协议,它与 talk 命令的 AIX 4.2 版本不兼容。
talk dale@host2
在该示例中,本地用户想与登录到 host2 上的用户 dale 交谈。
talk dale@host2 console
用户 dale 只有在 host2 的控制台上登录才能接收该消息。
《AIX 5L V5.2 系统用户指南:通信与网络》中的『网络概述』。
《AIX 5L V5.2 系统用户指南:通信与网络》中的『与远程用户对话』。