news 2026/6/17 11:26:49

Linux命令:write

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Linux命令:write

write 命令

基本介绍

write是 Linux 系统中用于向其他用户终端发送消息的命令。它允许用户与同一系统上的其他登录用户进行实时通信。write是系统用户之间进行即时通讯的工具。

资料合集:https://pan.quark.cn/s/6fe3007c3e95https://pan.quark.cn/s/561de99256a5https://pan.quark.cn/s/985f55b13d94https://pan.quark.cn/s/d0fb20abd19a

语法

write USERNAME [TTY]

使用示例

1. 向指定用户发送消息

writeusername

输入示例:

Hello! How are you? This is a test message.

结束输入:
Ctrl+D结束消息输入。

2. 向指定终端发送消息

writeusername pts/0

3. 发送单行消息

echo"Hello from write command"|writeusername

4. 向多个用户发送消息

# 向用户组发送消息使用 wall 命令wall"Hello everyone!"

5. 在脚本中使用 write

#!/bin/bash# 检查用户是否登录ifwho|grep-q"^username ";thenecho"User is logged in"echo"System maintenance in 10 minutes"|writeusernameelseecho"User is not logged in"fi

6. 发送文件内容

catmessage.txt|writeusername

输出格式说明

接收方看到的消息

Message from sender@hostname on pts/0 at 10:00 ... Hello! How are you? This is a test message. EOF

错误输出示例

write: user 'invalid_user' is not logged in write: permission denied write: no tty specified

工作原理

write 执行流程

# 1. 用户执行 write 命令writeusername# 2. 检查目标用户是否登录# 3. 检查目标用户是否允许消息(mesg 设置)# 4. 读取用户输入# 5. 发送消息到目标用户终端

相关文件

文件说明
/var/run/utmp当前登录用户信息
/dev/tty*终端设备文件

实用技巧

检查用户是否可以接收消息

#!/bin/bashUSERNAME="john"# 检查用户是否登录ifwho|grep-q"^$USERNAME";then# 获取用户终端TTY=$(who|grep"^$USERNAME"|awk'{print $2}')# 检查终端权限PERM=$(ls-l/dev/$TTY|cut-c8)if["$PERM"="w"];thenecho"$USERNAMEcan receive messages"elseecho"$USERNAMEhas disabled messages"fielseecho"$USERNAMEis not logged in"fi

发送定时提醒

#!/bin/bash# 发送提醒消息send_reminder(){localuser=$1localmessage=$2ifwho|grep-q"^$user";thenecho"$message"|write"$user"echo"Reminder sent to$user"elseecho"$useris not logged in"fi}# 使用示例send_reminder"john""Don't forget the meeting at 3 PM!"

批量发送消息

#!/bin/bash# 向所有登录用户发送消息MESSAGE="System will restart in 5 minutes for maintenance."foruserin$(users);doecho"Sending message to$user"echo"$MESSAGE"|write"$user"2>/dev/null||truedone

相关命令

  • mesg:控制终端消息权限
  • wall:向所有用户发送消息
  • talk:与其他用户进行对话
  • users:显示当前登录用户
  • who:显示当前登录用户
  • w:显示当前登录用户及其活动

注意事项

  1. 目标用户:目标用户必须已登录
  2. 消息权限:目标用户必须允许消息(mesg y)
  3. 终端指定:如果用户登录多个终端,可能需要指定终端
  4. root 用户:root 用户可以向任何用户发送消息
  5. 结束输入:按Ctrl+D结束消息输入

总结

write是 Linux 系统中用于向其他用户终端发送消息的工具。它允许用户与同一系统上的其他登录用户进行实时通信。write是系统用户之间进行即时通讯的工具。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/17 11:25:55

3分钟搞定Windows软件管理:AtlasOS应用安装卸载全攻略

3分钟搞定Windows软件管理:AtlasOS应用安装卸载全攻略 【免费下载链接】Atlas 🚀 An open and lightweight modification to Windows, designed to optimize performance, privacy and usability. 项目地址: https://gitcode.com/GitHub_Trending/atla…

作者头像 李华
网站建设 2026/6/17 11:24:55

从拒稿到录用:我的计算机工程与应用投稿实战复盘

1. 从拒稿到录用的心路历程 第一次收到《计算机科学与探索》的拒稿邮件时,我正在实验室熬夜改代码。邮件里编辑委婉地建议我改投《计算机工程与应用》,这个突如其来的转折让我盯着屏幕发呆了整整十分钟。作为研二学生,这篇基于深度学习的图像…

作者头像 李华
网站建设 2026/6/17 11:24:44

AI智能体开发全流程实战指南核心原理主流框架及落地项目实操详解

AI智能体开发全流程实战指南 核心原理主流框架及落地项目实操详解 随着大模型技术的成熟,AI智能体已经从概念验证阶段进入产业落地期,相比传统的规则式对话机器人、单轮大模型应用,具备感知、规划、行动、反思能力的AI智能体,在AI…

作者头像 李华
网站建设 2026/6/17 11:18:59

WarcraftHelper终极指南:让魔兽争霸3焕发新生的完整解决方案

WarcraftHelper终极指南:让魔兽争霸3焕发新生的完整解决方案 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 还在为《魔兽争霸3》这款经典…

作者头像 李华
网站建设 2026/6/17 11:10:48

零基础SRC漏洞挖掘实战:从信息收集到报告提交的完整指南

1. 项目概述:从“网安小白”到“SRC猎人”的蜕变之路 如果你对网络安全感兴趣,刷到过各种“白帽子”通过提交漏洞获得奖金和荣誉的故事,心里痒痒的,但又觉得“挖洞”这事儿门槛太高,不知从何下手,那你来对地…

作者头像 李华
网站建设 2026/6/17 11:09:49

天问51单片机通过ESP8266与MQTT协议实现巴法云温度监控

1. 从TCP到MQTT:为什么这次升级很关键 上次用TCP协议上传温度数据到巴法云平台的项目跑通后,我发现几个头疼的问题:每次断网后需要手动重连、模块功耗居高不下、数据包偶尔丢失。这些问题在物联网场景下特别致命——你总不能让设备24小时插着…

作者头像 李华