【发布时间】:2020-02-21 12:31:01
【问题描述】:
如何在 bash 中将进程的输出定向到标准输出并通过管道传输到另一个进程?
我在 mac 中使用 bash shell
我有两个python程序generate.py和sum.py
generate.py 将整数打印到标准输出。
当使用python3 generate.py 运行时,它会生成
1
2
3
4
...
...
sum.py 只是消耗generate.py 的输出并保持计数器,一旦generate.py 完成sum.py 输出最终值。
但是当我使用以下 bash 命令运行时
python3 generate.py >&2 | python3 sum.py我看不到python3 sum.py的输出
但是如果我这样做python3 generate.py | python3 sum.py 我可以看到sum.py 的结果被打印到标准输出,但我在标准输出中看不到generate.py 的输出。
所以我正在寻找的是查看generate.py 和sum.py 的输出,同时在它们之间传输数据。有什么想法吗?
【问题讨论】:
标签: bash