Linux tee命令详解

tee 是一个用于将标准输入(stdin)的数据同时复制到标准输出(stdout,即你的屏幕)和一个或多个文件中的命令,常用在管道中,以实现既要实时查看输出,又要将其保存到文件的需求。

📝 基本语法与常用选项

bash

复制代码
command | tee [选项] [文件名1] [文件名2] ... [文件名N]
选项 说明
-a, --append 追加模式:将输出追加到文件末尾,而不是覆盖原文件。
-i, --ignore-interrupts 忽略中断信号(如 Ctrl+C),确保文件能完整写入。
-p 在写入文件前,若目标目录不存在则自动创建。
--help 显示帮助信息。
--version 显示版本信息。

🔧 核心功能示例

以下是一些最常用的 tee 场景。

  • 场景一:基本的输出与保存
    最常用的场景。将 df -h 命令的输出同时显示在屏幕并写入文件 disk_usage.txt。

bash

复制代码
#将输出显示在屏幕并写入文件
复制代码
df -h | tee disk_usage.txt
  • 场景二:追加内容到文件

bash

复制代码
#将uptime命令的输出追加到system.log文件的末尾
复制代码
uptime | tee -a system.log
  • 场景三:同时写入多个文件

bash

复制代码
#将hostnamectl命令的输出同时写入install.log和system_info.txt
复制代码
hostnamectl | tee install.log system_info.txt
相关推荐
Android系统攻城狮4 分钟前
Linux PipeWire深度解析之pw_context_add_spa_lib调用流程与实战(二十九)
linux·运维·服务器·音频进阶·pipewire音频进阶
Dovis(誓平步青云)19 分钟前
《如何在CentOS 7中添加Plex官方软件源:解决文件磁盘难管理难题》
linux·运维·服务器·后端·生成对抗网络·centos
草莓熊Lotso30 分钟前
【Linux网络】深入理解Linux IO多路复用:select服务器完善、内核原理与poll实战
linux·运维·服务器·c语言·网络·c++
byte轻骑兵42 分钟前
BlueZ源码编译环境配置全指南:Linux桌面原生编译 + 嵌入式ARM交叉编译 + 定制裁剪与调试实战
linux·arm开发·蓝牙·bluez·电脑蓝牙
纪伊路上盛名在1 小时前
NVML ERROR_ RM has detected an NVML_RM version mismatch
linux·数据库·gpu·驱动
醉逍遥_祥1 小时前
Linux进程与NuttX任务(Linux Processes vs NuttX Tasks)
linux·单片机·嵌入式软件
网安老伯1 小时前
网络安全基础要点知识介绍(非常详细),零基础入门到精通,看这一篇就够了
运维·前端·网络协议·web安全·网络安全·职场和发展
迷茫中的自我1 小时前
GitHub Actions自动化运维实战:从CI/CD到云原生部署
运维·自动化·github
XH华1 小时前
Linux系统第二章:常见的Linux指令(上)
linux·运维·服务器
nVisual1 小时前
01-环境监控集成方案
运维·服务器·开发语言·网络·数据库·数据中心布线·综合布线管理软件