首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >>stdout和>stdout+stderr的Bash命令

>stdout和>stdout+stderr的Bash命令
EN

Stack Overflow用户
提问于 2013-02-28 17:13:12
回答 2查看 406关注 0票数 1

在Linux/bash下,我想运行一个命令并将标准输出发送到foo.txt,以及将组合的标准输出和标准错误发送到bar.txt:

代码语言:javascript
复制
$ cmd < input.txt  1>foo.txt 1+2>bar.txt   ???

做这件事最简单的方法是什么?

只发送stdout是:

代码语言:javascript
复制
$ cmd > foo.txt

同时发送stdout/stderr是:

代码语言:javascript
复制
$ cmd &> bar.txt

然而,试图将以下内容结合起来:

代码语言:javascript
复制
$ cmd > foo.txt &>bar.txt

导致foo.txt为空。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-02-28 17:16:22

以下命令应该可以完成此操作:

代码语言:javascript
复制
(cmd | tee out.txt) &> both.txt

这会将stdout重定向到out.txt,将stdoutstderr重定向到both.txt

票数 1
EN

Stack Overflow用户

发布于 2013-02-28 17:15:05

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15131579

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档