Linux bash 中,如何将正常信息和错误信息输出到文件
问题描述:
$ command 2>> error
$ command 1>> output
是否有方法,在bash同一行,实现输出stderr到error文件,输出stdout到output文件?
也就是,如何在bash的同一行,实现stderr和stdout重定向到不同的文件?
解决方法:
将它们放入同一行,command 2>> error 1>> output
然而,注意 >> 是如果文件有数据,会在文件尾部添加内容。而 > 将会重写文件中已经存在的数据。
只是为了完成目的,你可以写 1> 为 > , 因为其默认的文件描述符是输出。所以1> 和 > 是同样的东西。
所以,
command 2> error 1> output 成为 command 2> error > output
command 2>> error 1>> output 成为 command 2>> error >> output
或者如果你想要把输出(stdout & stderr)混合到同一个文件,可以使用命令:
command > merged-output.txt 2>&1
更简单的用法:command &> merged-output.txt
其中
2>&1 表示 stderr(文件描述为2) 重定位到stdout(文件描述符为1),也就是标准错误信息发送到与标准输出信息的相同位置。
补充说明:
在bash中,0, 1, 2...9 是文件描述符。0代表stdin,1代表stdout,2代表stderror。3~9未使用,可用于其他临时用法。
任何文件描述符能通过使用操作符符 > 或 >>(append) ,重定向为其他文件描述符或文件。
用法:<file_descriptor> > <filename | &file_descriptor>
更多内容,请参考
http://www.tldp.org/LDP/abs/html/io-redirection.html
技巧:
Linux make时,可能会出现很多调试信息,若出现错误,由于输出信息过多,在bash下,无法查找到第一个出错的位置的错误信息。此时,就可以采取上面的方法,先将其输出到文件,然后,在文件中,查找第一个出错信息的位置。
参考资料:
1、How to redirect stderr and stdout to different files in the same line of bash?
Linux bash 中,如何将正常信息和错误信息输出到文件的更多相关文章
- 获得Unix/Linux系统中的IP、MAC地址等信息
获得Unix/Linux系统中的IP.MAC地址等信息 中高级 | 2010-07-13 16:03 | 分类:①C语言. Unix/Linux. 网络编程 ②手册 | 4,471 次阅读 ...
- 使用spring webflow,在前台页面中如何显示后端返回的错误信息
刚刚接触spring webflow,相关的资料并不是很多,并且大都是那种入门的 .xml文件的配置. 用到的CAS 最新的4.0版本用的就是web-flow流,前台页面使用的是表单提交.于是我就碰到 ...
- 使用Windows客户端连接Linux系统中的MySQL时产生的错误已经解决
.personSunflowerP { background: rgba(51, 153, 0, 0.66); border-bottom: 1px solid rgba(0, 102, 0, 1); ...
- laravel框架中验证后在页面提示错误信息
{{-- 显示错误信息 判断:如果有错误则进行显示,--}} {{-- 通过$errors->any() 获取是否有错误,如果有则返回布尔值true,没有返回布尔值false--}} @if($ ...
- linux bash中too many arguments问题的解决方法
今天在编写shell脚本时,在if条件后跟的是[ $pid ],执行脚本的时候报 然后我输入改为[[$pid]]后,再执行脚本,就成功了,代码如下: #!/bin/bash pid=`ps -ef|g ...
- 在Linux系详解Linux bash中的变量
(大讲台:国内首个it在线教育混合式自适应学习) 统中进行日常运维或者是编写脚本时,变量是再熟悉不过的了,但这些变量都有哪些类型,具体的用法又有哪些差异呢?本文整理分享给大家: 一.bash变量类型: ...
- Linux bash中的变量分类
1.本地变量 VAR=XYZ 2.局部变量 local VAR=XYZ 3.环境变量 在子shell中可以起作用 export VAR=XYZ 4.位置变量 $0 脚本名本身 $1 第一个参数 $2 ...
- Linux日志中如何查找关键字及其前后的信息
在日常工作中,我们经常需要查看日志,比如可以通过 tail 命令实时查看日志,也可以通过 cat 等命令查看日志信息. 但现在我们要讨论的是,如何从日志中通过关键字过滤出我们想要的内容,方法有多种,今 ...
- 感叹号在Linux bash中使用技巧
1. 重复执行上一条指令 !! [root@iZ23t6nzr7dZ python]# ls /usr/local/ aegis bin etc games include lib lib64 li ...
随机推荐
- Android之Activity跳转
简述 如果把每个activity看成一个页面的话,那么activity之间的跳转和页面的之间的跳转基本上是一样的.首先需要监听一个事件,当这个事件发生的时候,就进行跳转.html中有个<a sr ...
- python列表下标用法
python中的列表下标实在太灵活了,要根据表象来分析它的内在机理,这样用起来才能溜.下标可以为负数有利有弊,好处是使用起来更简便,坏处是当我下表越界了我也不知道反倒发生奇奇怪怪的错误. print ...
- MySQL 5.7.9版本sql_mode=only_full_group_by问题
用到GROUP BY 语句查询时com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Expression #2 of SELECT l ...
- android定时器
Handler+Timer+TimerTask 三.采用Handler与timer及TimerTask结合的方法. 1.定义定时器.定时器任务及Handler句柄 private final Time ...
- Zookeeper总结
Zookeeper数据模型 zookeeper有一个层级的命名空间,更像一个分布式的文件系统. 唯一的区别就是命名空间中的每一个节点同它关联. ZNodes zookeeper树上的每一个节点被 ...
- xgboost
xgboost后面加了一个树的复杂度 对loss函数进行2阶泰勒展开,求得最小值, 参考链接:https://homes.cs.washington.edu/~tqchen/pdf/BoostedTr ...
- hdu4549 矩阵快速幂 + 欧拉降幂
R - M斐波那契数列 Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit ...
- 提供RESTful服务
RESTful广泛运用于互联网服务,而在企业应用中,大部分场景仍然是RPC服务,这是由于企业应用的业务复杂性造成的.但是基于SOAP的RPC服务也存在很多的弊端,比如服务异步处理比较麻烦,大部分RPC ...
- maven打包忽略测试用例
忽略单元测试失败: $ mvn test -Dmaven.test.failure.ignore=true 跳过单元测试: mvn install -Dmaven.test.skip=true 跳过测 ...
- dede使用方法---用js让当前导航高亮显示
当前导航高亮显示能够提升用户体验,我也知道,大家在网上搜dede让当前导航高亮显示的方法一抓一大把,但是,并不一定适合自己的需求.就像我的需求一样,导航有个二级导航,然后需要做到让当前导航高亮显示.我 ...