有没有命令可以让我向其他登录用户发送消息?例如,我想在关闭或重新启动服务器之前通知用户。
答案1
允许您向其他用户发送消息的最古老的命令之一是write
。
为了使您的用户能够使用写入功能获取消息,您必须启用它(以 root 身份)。
运行只会mesg
显示它是否已启用。
mesg y
启用它。
mesg n
禁用它。
然后,发送消息:运行who
查看当前登录到机器的用户列表,在第二列中你会找到他们的 tty 号码:
[root@centolel ~]# who
root pts/1 2017-03-15 19:22 (10.13.0.2)
lel pts/4 2017-03-15 19:30 (10.13.0.2)
然后运行:
write [user] [tty]
并且它可以让你直接向用户终端发送消息。
例子:
write lel /dev/pts/4
然后开始输入您的消息。
答案2
wall
是另一种选择,使用方法如下:
sudo wall 'rebooting in 5 minutes'
从手册页中:
NAME
wall - write a message to all users
SYNOPSIS
wall [-n] [-t timeout] [message | file]
DESCRIPTION
wall displays a message, or the contents of a file, or otherwise its standard input, on the terminals of all currently logged in users.