云网牛站
所在位置:首页 > Linux命令 > Linux系统中Wall命令的语法及用法实例

Linux系统中Wall命令的语法及用法实例

2020-10-06 09:53:34作者:陈铜稿源:云网牛站

本文介绍Linux系统中Wall命令的语法,及其用法实例,包括发送消息的示例、发送文件中的消息、向群组发送消息。

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命令。

 

相关主题

write命令_Linux write命令使用详解:向指定登录用户终端上发送信息

Linux命令子频道
精选文章
热门文章