将Linux下编译的warning警告信息输出到文件中

Linux中,脚本语言环境中,即你用make xxx即其他一些普通 linux 命令,比如ls,find等,不同的数字,代表不同的含义: 
数字 含义 标准叫法
0 标准输入 stdin = standard input
1 标准输出 stdout = standard output
2 标准错误输出 stderr = standard error

系统默认的stdin,stdout,stderr,都是屏幕,所以,当你执行命令,比如make,后,所输出的信息,都是可以在屏幕上看到的
所以,想要将对应信息输出到某个文件中,就用对应的数字加上重定向符号'>',实现将这些信息,重新定向到对应的文件中,即可。
(上面这两句,也是之前太多的人来解释,但是没有说明白的地方。)
下面以make命令为例来说明,如何把对应的信息,输出到对应的文件中:

【用法】
1.想要把make输出的全部信息,输出到某个文件中,最常见的办法就是:
make xxx > build_output.txt
此时默认情况是没有改变2=stderr的输出方式,还是屏幕,所以,如果有错误信息,还是可以在屏幕上看到的。
2.只需要把make输出中的错误(及警告)信息输出到文件中ing,可以用:
make xxx 2> build_output.txt
相应地,由于1=stdout没有变,还是屏幕,所以,那些命令执行时候输出的正常信息,还是会输出到屏幕上,你还是可以在屏幕上看到的。
3.只需要把make输出中的正常(非错误,非警告)的信息输出到文件中,可以用:
make xxx 1> build_output.txt
相应地,由于2=stderr没有变,还是屏幕,所以,那些命令执行时候输出的错误信息,还是会输出到屏幕上,你还是可以在屏幕上看到的。
4.想要把正常输出信息和错误信息输出到分别的文件中,可以用:
make xxx 1> build_output_normal.txt 2>build_output_error.txt
即联合使用了1和2,正常信息和错误信息,都输出到对应文件中了。
5. 所有的信息都输出到同一个文件中:
make xxx > build_output_all.txt 2>&1
其中的2>&1表示错误信息输出到&1中,而&1,指的是前面的那个文件:build_output_all.txt 。
注意:上面所有的1,2等数字,后面紧跟着大于号'>' ,中间不能有空格

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/434636.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java 内部编码_Java 中文编码分析

一、charAt 与 codePonitAt我们知道 Java 内部使用的是 utf-16 作为它的 char、String 的字符编码方式,这里我们叫它内部字符集。而 utf-16 是变长编码,一个字符的编码被称为一个 code point,它可能是 16 位 —— 一个 code unit,…

Framework1.1 DataView 转DataTable

因为Framework2.0开始DataView 有toTable()方法,可以直接转。但vs2003还是Framework1.1 没有这个方法。 所以要手动转,方法如下: public static DataTable CreateTable(DataView obDataView) { if (null obDataView) …

leetcode mysql 排名_(LeetCode:数据库)分数排名

编写一个 SQL 查询来实现分数排名。如果两个分数相同,则两个分数排名(Rank)相同。请注意,平分后的下一个名次应该是下一个连续的整数值。换句话说,名次之间不应该有“间隔”。-----------| Id | Score |-----------| 1 | 3.50 || 2 | 3.65…

Windows 8 JavaScript Metro应用程序--入门(上)

Windows 8 JavaScript Metro应用程序--入门(上) 如你所知的Windows8允许你通过以下几种方式创建Metro应用程序: CC# JavaScript第一部分将侧重于主体结构和JavaScript Grid 应用程序的基础,在随后的文章中我将深度探究在Windows8中…

内核编译(make)

内核编译(make)之后会生成两个文件,一个Image,一个zImage,其中Image为内核映像文件,而zImage为内核的一种映像压缩文件,Image大约为4M,而zImage不到2M。 那么uImage又是什么的&#…

cobol to java_cobol to java

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼(a) Javaソースプログラムの作成COBOLプログラムを呼び出すJavaプログラムでは,次の三つのJavaソースファイルを作成する必要があります。mainメソッドを含むJavaプログラム(Javaクラス)COBOLプログラムに対応するJava…

Elf

机器执行的是机器指令,而机器指令就是一堆二进制的数字。高级语言编写的程序之所以可以在不同的机器上移植就因为有为不同机器设计的编译器的存在。高级语言的编译器就是把高级语言写的程序转换成某个机器能直接执行的二进制代码。以上的知识在我们学习CS(Computer …

python教程闭包_Python教程 闭包的特性

作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~闭包(closure)是函数式编程的重要的语法结构。函数式编…

直接打印报表

在ax中有时可能需要在打印时,不显示报表的预览与设置窗口,而是直接Send到打印机。可以使用ClassFactory、PrintJobSettings、ReportRun来完成。 static void NJ_MF_DirectPrint(Args _args) { Args args new Args(); ReportRun …

如何构建自己的SIP SERVER!

如果你下载了 sip phone, 自己又做了一个 SIP SERVER,那么你就可以当老大了,不要什么MSN,QQ的语音通话了,自己就可以直接同你想要的人通话了。1:软件准备:A: SIP SERVER http://www.brekeke.com/en/download/idx_sipse…

java java.lang_Java之java.lang.IllegalMonitorStateException

今天又中彩了, 原本很简单的多线程程序, 蓦然间冒了个"java.lang.IllegalMonitorStateException" , 杀了个措手不及. 一直纳闷, 为什么为什么? 查资料说该异常由于对象未获取得到Lock就试图操作Lock. 再细细源码, 原来不不小将lock.lock()写错为lock.tryLock(). 坑爹…

CruiseControl.NET ----- mail 配置

最近在用 CruiseControl.NET实现每日构建,其他配置起来都挺方便,就是在邮件设置上费了不少时间,我用的是CC.NET1.6,这个版本已经支持发送附件,如果使用外部邮箱,记得要把邮箱的smtp功能打开,下面是Mail配置的一个例子&…

java编程字_Java编程基本概念

1.标识符①用于给变量、类和方法命名(类名首字母大写,变量和方法名首字母小写并遵循驼峰原则)②标识符的命名规范:■标识符必须以字母、下划线和美元符$开头。■标识符其他部分可以是字母、下划线、美元符和数字的任意组合。■Java标识符大小写敏感&…

ubuntu gedit出错:Failed to connect to the session manager

刚才用su到root后,用命令gedit发现会出错:** (gedit:2976): WARNING **: 连接已关闭(gedit:2976): EggSMClient-WARNING **: Failed to connect to the session manager:None of the authentication protocols specified are supported** (gedit:2976): …

php 类的实现 完整例子

文件目录&#xff1a; --index.php --php --data_info.php index.php 这里要require_once类所在的php文件 <?php require_once(./php/data_info.php);$oneDatanew user;$oneData->setName("username");$oneData->setPassword("password");echo $…

mac java版本 不一致_mac实现不同版本的jdk切换

之前使用jdk11进行java开发(纯粹因为喜欢新版?)但是使用jdk11在布署hadoop伪分布时各种报错, 所以还是下载jdk8回来.接下来就是mac端切换两个版本的jdk(按照网上找的方式好像有bug-文章最后再说.虽然不知道怎么解决,但是至少我可以成功部署hadoop, 所以这里就先忽略)首先下载j…

Meld安装

Ubuntu下文件/目录对比的软件Meld可能有很多用户还不是很熟悉&#xff0c;下文就给大家介绍如何安装Meld和移植到Gedit下。具体内容如下所述。 Meld允许用户查看文件、目录间的变化。很容易移植到Gedit下&#xff0c;方便用户使用。 安装Meld Meld默认在Ubuntu官方源中&#…

ios sqlite3 初级应用

ios sqlite3 初级应用 在ios中&#xff0c;持久化用好几种 方法&#xff0c;前面已经介绍了 两种 &#xff0c;一个是简单的写入文件&#xff0c;另一个是加入了序列化并写入文件中&#xff0c;现在介绍 ios 中嵌入式数据库sqlite3的初级应用 当然在使用sqlite3之前 你需要将l…

java aqs源码_java中AQS源码分析

AQS内部采用CLH队列。CLH队列是由节点组成。内部的Node节点包含的状态有static final int CANCELLED 1;static final int SIGNAL -1;static final int CONDITION -2;static final int PROPAGATE -3;其中取消状态表示任务的取消&#xff0c;SIGNAL状态表示后续节点需要唤…

android4.0.3去掉底部状态栏statusbar,全屏显示示例代码

要去掉android4.0上的状态栏&#xff0c;全屏显示的代码如下&#xff1a; 1、将usleep和killall这二个文件放到assets文件夹下。这二个文件可在下面的附件中下载到。 2、创建Device.java&#xff08;注&#xff1a;附件里有完整的代码&#xff09;: 001import java.io.Buf…