/usr/sbin/wall [-a] [-g grpname] [filename]
wall 读取其标准输入,直到文件末尾。然后,将此消息发送给所有当前登录的用户,前面附加以下内容:
Broadcast Message from . . .
如果指定了 filename,则从该文件读入消息。正常情况下,将忽略不响应 rlogin 会话的伪终端。因此,在使用 Windows 系统时,该消息仅在控制台窗口上显示。但是,使用 –a 甚至会将该消息发送到这样的伪终端。
它用于警告所有用户,通常在关闭系统前发出。
发送者必须是超级用户,以便覆盖用户可能调用的任何保护。请参见 mesg(1)。
wall 对组 ID tty 运行 setgid(),以便在其他用户的终端上拥有写入权限。请参见 setuid(2)。
在将字符发送到用户的终端之前,wall 将检测不可输出的字符。控制字符将显示为 ^ 后跟相应的 ASCII 字符;具有高阶位集的字符将以 “meta” 表示法显示。例如,\003 显示为 ^C,\372 显示为 M−z。
支持以下选项:
将消息广播到控制台和伪终端。
仅按组数据库广播到指定组中的用户(请参见 group(4))。
如果未在环境中设置 LC_* 变量(LC_CTYPE、LC_TIME、LC_COLLATE、LC_NUMERIC 和 LC_MONETARY),则每个对应的语言环境类别的 wall 的操作行为由 LANG 环境变量的值确定。请参见 environ(5)。如果设置了 LC_ALL,则会使用其内容覆盖 LANG 和其他 LC_* 变量。如果未在环境中设置上述任何变量,则 "C"(美国样式)语言环境将决定 wall 的行为方式。
/dev/tty*
有关下列属性的说明,请参见 attributes(5):
|
mesg(1)、write(1)、setuid(2)、attributes(5)、environ(5)
当对用户的 tty 文件打开失败时,wall 将显示 "Cannot send to . . ."。