前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【linux命令讲解大全】039.tee命令:同时输出数据到终端和文件

【linux命令讲解大全】039.tee命令:同时输出数据到终端和文件

作者头像
全栈若城
发布2024-03-02 13:04:15
1430
发布2024-03-02 13:04:15
举报
文章被收录于专栏:若城技术专栏

tee

从标准输入读取数据并重定向到标准输出和文件。

概要

tee [OPTION]... [FILE]...

主要用途

需要同时查看数据内容并输出到文件时使用。

参数

FILE(可选):要输出的文件,可以为一或多个。

选项

长选项与短选项等价

  • -a, --append:追加到文件中而不是覆盖。
  • -i, --ignore-interrupts:忽略中断信号(Ctrl+c中断操作无效)。
  • -p:诊断写入非管道的错误。
  • --output-error[=MODE]:设置写错误时的行为,请查看下方的MODE部分。
  • --help:显示帮助信息并退出。
  • --version:显示版本信息并退出。

MODE决定了当出现写错误时的输出行为,可用的MODE如下:

  • 'warn':当写入到任何输出报错时诊断。
  • 'warn-nopipe':当写入到任何输出(而不是管道)报错时诊断。
  • 'exit':当写入到任何输出报错时退出。
  • 'exit-nopipe':当写入到任何输出(而不是管道)报错时退出。

-p选项的指定的默认MODE'warn-nopipe'

'--output-error'没有在选项中时,默认的操作是当写入到管道报错时立刻退出,诊断错误信息并写入到非管道输出。

返回值

返回状态为成功除非给出了非法选项或非法参数。

例子

代码语言:javascript
复制
# 将进程信息通过管道输出到标准输出(终端)并覆盖写入到文件中。
ps -ef | tee info_a.log info_b.log

# 将进程信息通过管道输出到标准输出(终端)并追加写入到文件中。
ps -ef | tee -a info_a.log info_b.log

注意

该命令是GNU coreutils包中的命令,相关的帮助信息请查看man -s 1 teeinfo coreutils 'tee invocation'

存在缓存机制,每1024个字节将输出一次。若从管道接收输入数据,应该是缓冲区满,才将数据转存到指定的文件中。若文件内容不到1024个字节,则接收从标准输入设备读入的数据后,将刷新一次缓冲区,并转存数据到指定文件。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-09-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • tee
    • 概要
      • 主要用途
        • 参数
          • 选项
            • 返回值
              • 例子
                • 注意
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档