wall - 写入到所有用户
/usr/sbin/wall [-a] [-g grpname] [filename]
wall 读取其标准输入,直到文件末尾。然后,将此消息发送给所有当前登录的用户,前面附加以下内容:
Broadcast Message from . . .
如果指定了 filename,则从该文件读入消息。
它用于警告所有用户,通常在关闭系统前发出。Normally, pseudo-terminals that do not correspond to login sessions are ignored.因此,在使用 Windows 系统时,该消息仅在控制台窗口上显示。但是,使用 –a 甚至会将该消息发送到这样的伪终端。
The sender must have all privileges to override any protections the users may have invoked.See mesg(1).
wall 对组 ID tty 运行 setgid(),以便在其他用户的终端上拥有写入权限。See setuid(2).
在将字符发送到用户的终端之前,wall 将检测不可输出的字符。控制字符将显示为 ^ 后跟相应的 ASCII 字符;设置了高阶位的字符将以 "meta" 表示法显示。For example, ‘\003’ is displayed as ‘^C’ and ‘\372’ as ‘M-z’.
支持以下选项:
将消息广播到控制台和伪终端。
仅按组数据库广播到指定组中的用户(请参见 group(5))。
如果未在环境中设置 LC_* 变量(LC_CTYPE、LC_TIME、LC_COLLATE、LC_NUMERIC 和 LC_MONETARY),则每个对应的语言环境类别的 wall 的操作行为由 LANG 环境变量的值确定。See environ(7).如果设置了 LC_ALL,则会使用其内容覆盖 LANG 和其他 LC_* 变量。如果未在环境中设置上述任何变量,则 "C"(美国样式)语言环境将决定 wall 的行为方式。
/dev/tty*
有关下列属性的说明,请参见 attributes(7):
|
mesg(1), write(1), setuid(2), attributes(7), environ(7)
wall displays “Cannot send to . . .” when it fails to open a user's tty file.