Linux输出信息并将信息记录到文件(tee命令)

前言

最近工作中遇到一个需求,需要将程序的输出写到终端,同时写入文件,通过查找相关的资料,发现可以用 tee 命令实现,首先来解释一下 tee 命令的作用:

read from standard input and write to standard output and files.

它从标准输入读取内容并将其写到标准输出和文件中。

例如:

ls | tee ls_tee.txt

cat ls_tee.txt

使用 tee 时,如果想保留目标文件原有的内容,可以使用 -a 参数,附加至给出的文件,而不是覆盖它。

命令 tee 的参数选项:

-a: 向文件中重定向时使用追加模式

-i: 忽略终端信号(Interrupt)

tee命令

tee 命令主要用于将数据重定向到文件,另一方面还可以提供一份重定向数据的副本作为后续命令的 stdin。也就是可以把数据同时重定向到给定文件和屏幕。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

(0)

相关推荐

  • linux shell的输出效果修改方法(界面颜色)

    文本终端的颜色可以使用"ANSI非常规字符序列"来生成.举例: echo -e "\033[44;37;5m ME \033[0m COOL" 以上命令设置背景成为蓝色,前景白色,闪烁光标,输出字符"ME",然后重新设置屏幕到缺省设置,输出字符 "COOL"."e"是命令 echo 的一个可选项,它用于激活特殊字符的解析器."\033"引导非常规字符序列."m"意味着

  • python在linux中输出带颜色的文字的方法

    在开发项目过程中,为了方便调试代码,经常会向stdout中输出一些日志,默认的这些日志就直接显示在了终端中.而一般的应用服务器,第三方库,甚至服务器的一些通告也会在终端中显示,这样就搅乱了我们想要的信息. 我们可以通过对有用的信息设置不同颜色来达到醒目的效果,因为我平时都是在linux下开发,而linux终端中的颜色是用转义序列控制的,转义序列是以ESC开头,可以用\033完成相同的工作(ESC的ASCII码用十进制表示就是27,等于用八进制表示的33). 书写格式,和相关说明如下: 复制代码

  • linux c程序中获取shell脚本输出的实现方法

    1. 前言Unix界有一句名言:"一行shell脚本胜过万行C程序",虽然这句话有些夸张,但不可否认的是,借助脚本确实能够极大的简化一些编程工作.比如实现一个ping程序来测试网络的连通性,实现ping函数需要写上200~300行代码,为什么不能直接调用系统的ping命令呢?通常在程序中通过 system函数来调用shell命令.但是,system函数仅返回命令是否执行成功,而我们可能需要获得shell命令在控制台上输出的结果.例如,执行外部命令ping后,如果执行失败,我们希望得到p

  • 远程linux xshell下输出中文乱码解决方法

    使用xshell登录中文版CentOS或者redhat时,在xshell下如果输出的是中文的话可能会显示乱码,通过如下办法可以有效的解决乱码问题 linux中文乱码解决方法如下: 复制代码 代码如下: [root@localhost ~]# cd /etc/sysconfig/ [root@localhost sysconfig]# cp i18n i18n.bak #备份i18n文件 [root@localhost sysconfig]# echo "" >i18n [root

  • Linux输出信息并将信息记录到文件(tee命令)

    前言 最近工作中遇到一个需求,需要将程序的输出写到终端,同时写入文件,通过查找相关的资料,发现可以用 tee 命令实现,首先来解释一下 tee 命令的作用: read from standard input and write to standard output and files. 它从标准输入读取内容并将其写到标准输出和文件中. 例如: ls | tee ls_tee.txt cat ls_tee.txt 使用 tee 时,如果想保留目标文件原有的内容,可以使用 -a 参数,附加至给出的文

  • Python向日志输出中添加上下文信息

    除了传递给日志记录函数的参数(如msg)外,有时候我们还想在日志输出中包含一些额外的上下文信息.比如,在一个网络应用中,可能希望在日志中记录客户端的特定信息,如:远程客户端的IP地址和用户名.这里我们来介绍以下几种实现方式: 通过向日志记录函数传递一个extra参数引入上下文信息 使用LoggerAdapters引入上下文信息 使用Filters引入上下文信息 一.通过向日志记录函数传递一个extra参数引入上下文信息 前面我们提到过,可以通过向日志记录函数传递一个extra参数来实现向日志输出

  • Linux常用查看硬件设备信息命令大全(值得收藏)

    # uname -a # 查看内核/操作系统/CPU信息 # head -n 1 /etc/issue # 查看操作系统版本 # cat /proc/cpuinfo # 查看CPU信息 # hostname # 查看计算机名 # lspci -tv # 列出所有PCI设备 # lsusb -tv # 列出所有USB设备 # lsmod # 列出加载的内核模块 # env # 查看环境变量 资源 # free -m # 查看内存使用量和交换区使用量 # df -h # 查看各分区使用情况 # du

  • JavaScript中输出信息的方法(信息确认框-提示输入框-文档流输出)

    js中输出信息的方法内容如下所示: 1.文档流输出 document.write('hello'); 2.输出信息提示框 模态对话框 window.alert('要输出显示的内容'); 或 alert('要输出显示的内容'); alert(n); 3.信息确认框 var f = window.confirm('是否要进入新浪网'); confirm(""); if(f){ location.href = 'http://www.sina.com.cn'; } 4.提示输入框 windo

  • Linux下如何查看版本信息的方法步骤

    Linux下如何查看版本信息, 包括位数.版本信息以及CPU内核信息.CPU具体型号等等,整个CPU信息一目了然. 1.# uname -a   (Linux查看版本当前操作系统内核信息) Linux localhost.localdomain 2.4.20-8 #1 Thu Mar 13 17:54:28 EST 2003 i686 athlon i386 GNU/Linux 2.# cat /proc/version (Linux查看当前操作系统版本信息) Linux version 2.4

  • Python 输出详细的异常信息(traceback)方式

    问题描述 为了程序的正常运行,进行异常处理是有必要的,甚至于有时候,我们会主动的抛出异常,然后让程序进行异常捕获,再进行进一步的处理.但是,在开发的程序相对较大的过程中,我们不能一昧的进行try....except.而是要弄清楚到底抛出的是什么异常,同时,对于某些未知的异常,我们应该清楚的定位到到底是哪一行程序抛出的异常,针对这种情况,traceback库能极大的帮助我们. 解决方法 代码只需一行,即 print(traceback.format_exc()) 即可,这样即可打印详细的信息,这个

  • PHP如何将log信息写入服务器中的log文件

    将log信息写入服务器中的log文件文件,折腾了一大圈终于找到了解决方案,具体内容如下: 折腾: [记录]php中如何写类和如何使用类 期间,需要整理出一份,可配置的,通用的,log系统. 支持写入log信息到log文件中. [折腾过程] 1.搜: php log to file 参考: PHP: error_log – Manual PHP: syslog – Manual How to create logs with PHP – Web Services Wiki Write to a l

  • Python loguru日志库之高效输出控制台日志和日志记录

    1安装loguru loguru的PyPI地址为:https://pypi.org/project/loguru/ GitHub仓库地址为:https://github.com/Delgan/loguru 我们可以直接使用pip命令对其进行安装 pip install loguru 或者下载其源码,使用Python命令进行安装. |2loguru简单使用 from loguru import logger logger.info("中文loguru") logger.debug(&qu

  • linux用户与文件基础命令介绍(1)

    linux系统是一个多用户多任务的分时操作系统,但系统并不能识别人,它通过账号来区别每个用户.每个linux系统在安装的过程中都要为root账号设置密码,这个root即为系统的第一个账号.每一个用这个账号登录系统的用户都是超级管理员,他们对此系统有绝对的控制权.通过向系统管理员进行申请,还可以为系统创建普通账号.每个用普通账号登录系统的用户,对系统都只有部分控制权. 我们知道计算机中的数据是以二进制0.1的形式存储在硬件之上的.在linux中,为了管理的方便,系统将这些数据组织成目录和文件,并以

  • Linux系统下如何使用C++解析json文件详解

    1. 背景 工作需要,下班回来自己造轮子,记录以后查阅. JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,和xml类似,本文主要Linux下使用Jsoncpp解析json的方法做一下记录. 2. 关于jsoncpp库的使用简介 使用jsoncpp有两种方法 方法一:使用Jsoncpp生成的lib文件 解压上面下载的Jsoncpp文件,在jsoncpp默认生成静态链接库. 在工程中引用,只需要包含include/json下的头文件及生成的.lib文件即

随机推荐