热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

linux命令输出到屏幕的同时保存到文件

linux命令输出到屏幕的同时保存到文件tee用于把命令结果打印在屏幕上并同时保存到文件。tee用法描述:从标准输入中读取并同时写入到标准输出和指定的文件上选项:-a,--a

linux命令输出到屏幕的同时保存到文件

tee用于把命令结果打印在屏幕上并同时保存到文件。 tee用法 描述:从标准输入中读取并同时写入到标准输出和指定的文件上 选项:     -a,--append:不覆盖,而是追加输出到指定的文件中     -i,--ignore-interrupts:忽略中断信息     若指定的输出文件为'-',则再次输出到标准输出上 实例:     tee Example.txt #将标准输入中输入的内容同时输出到Example.txt和标准输出上 实践: 例如 ifconfig | tee ifconfig.log 查看iconfig.log 注: 标准输入一般有键盘和其它文件,标准输出有屏幕等。

tee只能进行标准输入的输出,对于错误输入是不能输出的。

在调试脚本时,想要每个命令的执行过程都输出到屏幕或者文件中,以便后续查看,如何操作呢?首先脚本第一行要写为“#!/bin/bash -x”,这样会把每个命令的执行记录都输出到屏幕,若还要输出到指定文件,要用到tee,但tee只能进行标准输入,对于标准输入和错误输入要用到下式: ./filename.sh 2>&1 | tee output.log   或者直接 bash -x ./filename.sh 2>&1 | tee output.log 今天调试一个bash,要把屏幕的输出结果存到log文件中,开始输入$bash -x ./test.sh > log 结果发现log里只存放了程序的执行结果,后来在cu的一篇帖子里http://bbs.chinaunix.net/viewthread.php?tid=264380&highlight=bash得到了启发,bash -x的调试信息是输出到2号流中的,所以解决方案为bash -x ./test.sh 2>&1 | tee log 想起以前要存放执行make的结果时也遇到类似问题,总结如下: 1、管道符的“I”的作用只是把前一个程序的标准输出流(stdout)的数据作为后一个程序的标准输入流stdin的数据,如不进行重定向,则其他输出流的信息是无法传给后面的程序的 2、屏幕得到的信息不一定是从程序的标准输出来的,也包括标准错误输出流stderr中的信息 3、有些程序(特别是象bash、make这样执行了其他程序的程序)的设计者为了省事,把一些正常情况的信息也放在stderr中输出(即使程序本身并无错误),而stdout用来输出被调用程序的执行时信息,造成了用户的误解简单编写了一下脚本,通过ssh登陆在命令行下运行正常,可是将脚本添加到crontab中就不正常。想记录一下输出信息,分析一下错误原因。将脚本通过使用>info.log 重定向输出,结果发现一些在命令行下可以看到的文本信息没有记录到info.log文件中,研究了一下,那些输出估计是输出到了标准错误上。 研究了一下通常添加命令后面几个输出含义 ■ >/dev/null 输出到空设备,表示丢掉输出信息。

linux下,如何将控制台输出的所有内容全部输出到一个文本文件?

直接使用输出重定向到你想要的文件即可,不过将所有的控制到信息输出到一个文本文件,只有两个办法:①:修改所有程序的输出路径:printf函数 echo.....几乎是不可能完成的任务②:修改linux的标准输出路径:句柄 句柄的数字代号 描述STDIN 0 键盘输入STDOUT 1 输出到命令提示符窗口STDERR 2 错误输出到命令提示符窗口将标准输出 标准输出的默认设置更改为你要保存的文件,这样就会控制台的信息就会输出到你指定的文件里面

Linux标准输入输出与重定向详解|果断收藏

linux中的>、>>、<、<<、2>、2>>、2>&1、&>、&<,总归要面对的 为了更好的理解这个问题,我们需要追本溯源。 执行一个shell命令行时通常会自动打开三个标准文件 (1) 、标准输入文件(stdin) 通常对应终端的键盘。

(2)、标准输出文件(stdout)。

(3)、标准错误输出文件(stderr)。 (2)和(3)这两个文件都对应终端的屏幕。 进程将从标准输入文件中得到输入数据。 将正常输出数据输出到标准输出文件[显示器]。

将错误信息送到标准错误文件中[显示器]。 下图所示: 0、1、2表示一个文件描述符 但是,有时候我们不想把一些进程处理后信息输出到显示器。 这时我们就引出了重定向。

改变标准输入/输出的方向 三种重定向: 1、重定向标准输出,包括两种。 (1)、>(覆盖),等价1> 将命令执行的结果输出到指定文件,非显示器。 (2) 、>>(追加),等价1>> 将命令执行的结果追加到指定文件,非显示器。

2、 重定向标准输入,包括两种。 (1) 、<将命令中接收的输入途径,由键盘改为指定文件。 (2) 、<<[Here Document] 命令序列传递到一个交互程序或者命令中。

3、 重定向标准错误,包括两种。 (1) 、2>(覆盖) 将命令执行的结果输出到指定文件。 (2) 、2>>(追加) 将命令执行的结果追加到指定文件。 1、重定向标准输出和重定向标准错误到同一个文件中 有以下的几种方式 (1) 、2>&1 (2) 、>& (3) 、&> 2、 两个特殊文件 (1) 、/dev/nul 过滤标准错误信息 意思就是不想显示结果就输出到这里面。

linux输出重定向到文件命令

输出即把相关对象通过输出设备(显示器等)显示出来,输出又分正确输出和错误输出一般情况下标准输出设备为显示器,标准输入设备为键盘。linux中用0代表标准输入,1代表标准正确输出,2代表标准错误输出。

输出重定向:正常输出是把内容输出到显示器上,而输出重定向是把内容输出到文件中例如:ifconfig > test.log 即把ifconfig执行显示的内容写入test.log.当前页面不再显示执行结果。

注意:错误输出重定向>/>>后边没有空格命令 >> 文件 2>&1 和 命令 &>>文件 两个命令作用相同系统有个常见用法 ls &>/dev/null 正确输出或错误输出结果都不要。(null可以理解为黑洞或垃圾站)命令>>文件1 2>>文件2 正确日志和错误日志分开保存 例:nohup java -jar /usr/sbin/lb-agent.jar >>/var/log/lb-agent.log 2>&1 &将jar执行的结果写入到lb-agent.log中在命令最后加上&符号,表示让这个进程到后台去执行,这样立刻返回到提示符状态,我们可以接着做下面的事。如:command &。这种“后台”进程在shell一直打开的情况下是没有问题的,如果我们关了shell窗口甚至退出ssh登录或vnc登录,那么进程自动就结束了。

所以如果想退出窗口乃至退出登录仍然保持程序运行,再加上nohup,形如:nohup command 1>output 2>&1 &  《Linux就该这么学》学习更多linux知识。

linux怎么在代码里将每次的操作结果写入到文件中?

用 > 把输出转向就可以了例子:[lhd@hongdi ~]$ ls > ls.txt[lhd@hongdi ~]$ cat ls.txt1.gtkrc-2.02009aamsn_receiveda.tar.gz说明: > 是把输出转向到指定的文件,如文件已存在的话也会重新写入,文件原内容不会保留>> 是把输出附向到文件的后面,文件原内容会保留下来。更多更详细的Linux知识可参考《Linux就该这么学》。

linux中printf后的内容怎么保存到文件中

可以运用Linux输出重定向>和>>来将输出的数据保存到文件,直接在命令后加>xxx。输出重定向的用法:标准输出的控制语法:命令>文件将命令的执行结果送至指定的文件中。

例如:ls-l>list将执行“ls-l”命令的结果写入文件list中。

语法:命令>!文件将命令的执行结果送至指定的文件中,若文件已经存在,则覆盖。例如:ls-lg>!list将执行“ls-lg”命令的结果覆盖写入文件list中。语法:命令>&文件将命令执行时屏幕上所产生的任何信息写入指定的文件中。例如:ccfile1.c>&error将编译file1.c文件时所产生的任何信息写入文件error中。

语法:命令》文件将命令执行的结果附加到指定的文件中。例如:ls-lag>>list将执行“ls-lag”命令的结果附加到文件list中。语法:命令》&文件将命令执行时屏幕上所产生的任何信息附加到指定的文件中。

例如:ccfile2.c>>&error将编译file2.c文件时屏幕所产生的任何信息附加到文件error中。


推荐阅读
  • 数字图书馆近期展出了一批精选的Linux经典著作,这些书籍虽然部分较为陈旧,但依然具有重要的参考价值。如需转载相关内容,请务必注明来源:小文论坛(http://www.xiaowenbbs.com)。 ... [详细]
  • 本文介绍了如何利用Shell脚本高效地部署MHA(MySQL High Availability)高可用集群。通过详细的脚本编写和配置示例,展示了自动化部署过程中的关键步骤和注意事项。该方法不仅简化了集群的部署流程,还提高了系统的稳定性和可用性。 ... [详细]
  • 本文详细介绍了 InfluxDB、collectd 和 Grafana 的安装与配置流程。首先,按照启动顺序依次安装并配置 InfluxDB、collectd 和 Grafana。InfluxDB 作为时序数据库,用于存储时间序列数据;collectd 负责数据的采集与传输;Grafana 则用于数据的可视化展示。文中提供了 collectd 的官方文档链接,便于用户参考和进一步了解其配置选项。通过本指南,读者可以轻松搭建一个高效的数据监控系统。 ... [详细]
  • 本文介绍了如何使用Python的Paramiko库批量更新多台服务器的登录密码。通过示例代码展示了具体实现方法,确保了操作的高效性和安全性。Paramiko库提供了强大的SSH2协议支持,使得远程服务器管理变得更加便捷。此外,文章还详细说明了代码的各个部分,帮助读者更好地理解和应用这一技术。 ... [详细]
  • 在CentOS 7环境中安装配置Redis及使用Redis Desktop Manager连接时的注意事项与技巧
    在 CentOS 7 环境中安装和配置 Redis 时,需要注意一些关键步骤和最佳实践。本文详细介绍了从安装 Redis 到配置其基本参数的全过程,并提供了使用 Redis Desktop Manager 连接 Redis 服务器的技巧和注意事项。此外,还探讨了如何优化性能和确保数据安全,帮助用户在生产环境中高效地管理和使用 Redis。 ... [详细]
  • 服务器部署中的安全策略实践与优化
    服务器部署中的安全策略实践与优化 ... [详细]
  • 本文详细介绍了定时器输入捕捉技术的原理及其应用。通过配置定时器通道的引脚模式为输入模式,并设置相应的捕获触发条件,可以实现对外部信号的精确捕捉。该技术在实时控制系统中具有广泛的应用,如电机控制、频率测量等场景。文中还提供了具体的配置步骤和示例代码,帮助读者更好地理解和应用这一技术。 ... [详细]
  • 在开发过程中,我最初也依赖于功能全面但操作繁琐的集成开发环境(IDE),如Borland Delphi 和 Microsoft Visual Studio。然而,随着对高效开发的追求,我逐渐转向了更加轻量级和灵活的工具组合。通过 CLIfe,我构建了一个高度定制化的开发环境,不仅提高了代码编写效率,还简化了项目管理流程。这一配置结合了多种强大的命令行工具和插件,使我在日常开发中能够更加得心应手。 ... [详细]
  • 在使用SSH框架进行项目开发时,经常会遇到一些常见的问题。例如,在Spring配置文件中配置AOP事务声明后,进行单元测试时可能会出现“No Hibernate Session bound to thread”的错误。本文将详细探讨这一问题的原因,并提供有效的解决方案,帮助开发者顺利解决此类问题。 ... [详细]
  • 本文详细介绍了在 CentOS 7 系统中配置 fstab 文件以实现开机自动挂载 NFS 共享目录的方法,并解决了常见的配置失败问题。 ... [详细]
  • Linux CentOS 7 安装PostgreSQL 9.5.17 (源码编译)
    近日需要将PostgreSQL数据库从Windows中迁移到Linux中,LinuxCentOS7安装PostgreSQL9.5.17安装过程特此记录。安装环境&#x ... [详细]
  • 本文总结了一些开发中常见的问题及其解决方案,包括特性过滤器的使用、NuGet程序集版本冲突、线程存储、溢出检查、ThreadPool的最大线程数设置、Redis使用中的问题以及Task.Result和Task.GetAwaiter().GetResult()的区别。 ... [详细]
  • SSL 错误:目标主机名与备用证书主题名称不匹配
    在使用 `git clone` 命令时,常见的 SSL 错误表现为:无法访问指定的 HTTPS 地址(如 `https://ip_or_domain/xxxx.git`),原因是目标主机名与备用证书主题名称不匹配。这通常是因为服务器的 SSL 证书配置不正确或客户端的证书验证设置有问题。建议检查服务器的 SSL 证书配置,确保其包含正确的主机名,并确认客户端的证书信任库已更新。此外,可以通过临时禁用 SSL 验证来排查问题,但请注意这会降低安全性。 ... [详细]
  • 本文介绍了 Vue 开发的入门指南,重点讲解了开发环境的配置与项目的基本搭建。推荐使用 WebStorm 作为 IDE,其下载地址为 。安装时请选择适合您操作系统的版本,并通过 获取激活码。WebStorm 是前端开发者的理想选择,提供了丰富的功能和强大的代码编辑能力。 ... [详细]
  • 本文介绍了如何在 Windows 系统上利用 Docker 构建一个包含 NGINX、PHP、MySQL、Redis 和 Elasticsearch 的集成开发环境。通过详细的步骤说明,帮助开发者快速搭建和配置这一复杂的技术栈,提升开发效率和环境一致性。 ... [详细]
author-avatar
手机用户2602889575
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有