本文介绍Linux系统中Wall命令的语法,及其用法实例,包括发送消息的示例、发送文件中的消息、向群组发送消息。
前言 wall是一个命令行实用程序,可在所有已登录用户的终端上显示一条消息,这些消息可以在终端上键入,也可以在文件内容中键入。wall代表全部写入,使用write命令仅向特定用户发送消息。 通常,系统管理员发送消息以宣布维护,并要求用户注销并关闭所有打开的程序。在终端打开的情况下,消息将显示给所有登录用户。使用没有终端打开的图形桌面环境的用户将看不到该消息。每个用户都可以使用mesg实用程序控制对其终端的写访问。当超级用户调用wall命令时,无论其mesg设置如何,所有用户都会收到消息。 参考:wall命令_Linux wall命令使用详解:向系统当前所有打开的终端上输出信息。
Wall命令的语法及发送消息的示例 wall命令的语法如下: wall [OPTIONS] [<FILE>|<MESSAGE>] 如果未指定文件,wall将从标准输入中读取消息。 发送消息的最直接方法是调用以消息为参数的wall命令: wall "The system will be restarted in 10 minutes." 返回: Broadcast message from root@ywnz.host (pts/0) (Sun Oct 4 19:22:07 2020): The system will be restarted in 10 minutes. 该消息将发送给当前登录的所有用户。 要查看所有已登录的用户,请运行w或who命令。 要隐藏标题并仅显示您输入的文本给登录用户,请使用-n (--nobanner) 选项调用命令: wall -n "The system will be restarted in 10 minutes." 返回: The system will be restarted in 10 minutes. 如果要编写多行消息,请在不带参数的情况下调用命令: wall wall命令将等待您输入文本,输入完消息后,请按Ctrl+D结束程序并发送消息。 您还可以使用here-string重定向或将另一个命令的输出通过管道传递到wall,这是显示如何使用echo命令发送多行消息的示例: echo "The system will be restarted in 10 minutes. \nPlease save your work." | wall
Wall命令的用法实例 1、发送文件中的消息 如果您定期发送相同的邮件,则可以将其中的每一封邮件都写入文件中,这样就无需重新输入相同的文本,wall仅当以root身份调用时才从文件读取。 要发送文件的内容,请调用wall命令,后跟文件名,在message1_file.txt文件中: The system will be restarted in 10 minutes. 运行: wall message1_file.txt 返回: Broadcast message from root@ywnz.host (pts/0) (Sun Oct 4 19:25:06 2020): The system will be restarted in 10 minutes. 2、向群组发送消息 要仅向给定组的成员发送消息,请使用-g (--group)选项运行命令,然后输入组名,例如,要仅在“devs”组的成员的终端上编写,可以运行: wall -g devs "The system will be restarted in 10 minutes." 也可以通过其GID(组ID)指定该组。
结论 wall命令在所有当前登录用户的终端上发送一条消息,它的用法也相当的简单,掌握以上用法就可以正确的用好wall命令。
相关主题 |