技术解析

Bash man stdout 问题
0
2021-07-09 15:45:56
idczone

下面第一行命令返回的是 whoami 的结果,但是把这行命令重定向到文件中就变成了man ls 的结果了,实在想不通,而且用管道的话 man -P whoami ls | cat 也是返回的ls的手册。想不通啊想不通!

man -P whoami ls
man -P whoami ls > whoami

bash 重定向了 man 的 stdout ,没有重定向 whoami 的。

我敢说你不知道上面这条命令是什么意思,甚至都没敲过。

说话不要太绝对好么,你 man 一下 man 看看-P 是什么意思, whoami 是 man fork 出来的, bash 当然不会重定向 whoami 的 stdout 。

`man` doesn't use a pager if the output is not a terminal but a file or a pipe. So the` -P `option is ignored in that case.
刚在 Askubuntu 上的回答。

看上条。

数据地带为您的网站提供全球顶级IDC资源