向所有用户写入消息
命令语法格式
wall [-n] [-t timeout] [message | file]
命令描述
命令wall用于在所有当前登录用户的终端上显示消息、文件内容,或其标准输入。该命令将包含长度超过79个字符的行。小于时是用空格填充的,达到79个字符。 该命令将始终在每行的末尾放置一个回车符和换行符。
只有超级用户才能在已选择拒绝邮件或正在使用自动拒绝邮件的程序的用户的终端上写入消息。
当调用者不是超级用户,并且程序是SUID或SGID时,拒绝从文件file中读取。
命令行选项
-n, –nobanner
取消消息横幅,只发送消息内容。
-t, –timeout timeout
在timeout秒后,放弃对终端的写入尝试。参数timeout必须是正整数。默认值为300秒,这是人们通过调制解调器线路运行终端时的遗留问题。
-g, –group group
使用group参数指定一个组,消息只会发送给该组中的成员。参数可以是GID或者组名。
其他选项
–help
显示帮助信息并退出。
–version
显示版本信息并退出。
注意事项
某些会话,例如wdm,在utmp(5)的ut_type数据的开头有一个’:’字符,不会从wall上获取消息。 这样做是为了避免写入错误。
使用示例
执行如下命令:
# wall “This is a message.”
在每个用户的登录终端中将收到如下消息:
Broadcast message from root@laptop (pts/16) (Wed Jan 23 08:10:57 2019):
This is a message.
使用-n选项,可以取消发送消息横幅(即,Broadcast message …)
相关手册
mesg(1), talk(1), write(1), shutdown(8)
参考文献
- man 1 wall, Version wall from util-linux 2.29.2
更新日志
- 07/11/2018 创建文章
- 01/23/2019 调整文章内容,加入「使用示例」部分