在某种程度上,这个问题是其他问题。
在 bash 中,您可以使用文件描述符做一些非常巧妙的事情。喜欢
{ command > /dev/null } 2>&1 | grep filter;
grep 上标准错误仅有的。
我的问题:
- 有多少级描述符。 (“数字”可以达到多高)?
- 除了
1
和2
( 之外,它们是标准输出和标准错误),那些其他“数字”的含义和一般用途是什么? - 它们的指定顺序重要吗?
例如command 1>&2 3>&1 2>&3
与command 2>&3 3>&1 1>&2
答案1
63
您很可能期望它们能够在典型的 Linux 机器上运行。- 有 (was?)
stdlog
,但很少使用(我相信我从未见过)。 - 顺序很重要:检查
man bash
重定向。
答案2
您需要的数量由最大文件描述符计数给出极限(1)命令。