整体说明
tee命令是 Linux 中的一个常用工具,主要功能是将标准输入同时输出到两个地方 :- 一个是标准输出(stdout,通常是终端屏幕)
- 另一个是指定的文件
tee命令的作用类似于“三通管”,既让数据在屏幕上可见,又能保存到文件中,避免了“输出重定向(>)会隐藏屏幕显示”的问题- TLDR:
tee的核心价值就是“一份输入,双重输出(屏幕 + 文件)”,在需要同时查看和保存命令结果时非常方便
基本用法示例:
查看系统信息并保存到文件:
1
uname -a | tee system_info.txt
- 屏幕上会显示
uname -a的输出结果 - 同时会创建
system_info.txt文件,内容与屏幕输出一致
- 屏幕上会显示
使用
-a选项可以追加内容(默认是覆盖文件):1
echo "新内容" | tee -a system_info.txt
- 屏幕显示“新内容”
- 同时将“新内容”追加到
system_info.txt末尾,原有内容保留
技巧:配合 sudo 编辑无写入权限的文件
这是
tee非常实用的场景例如,普通用户想向
/etc目录下的文件写入内容(需要 root 权限):1
echo "配置内容" | sudo tee /etc/some_config.conf
避免了直接用
sudo echo "..." > /etc/...因权限问题失败的情况既能看到输出,又能正确写入有权限要求的文件