行是这样的:
if [catch {open "|$command |& cat"} input] {
这是来自http://www.beedub.com/book/2nd/TKEXAMPL.doc.html
的代码片段到目前为止,$ command描述了一个命令管道。根据该教程页面,输出将通过管道传输到cat中,以将错误立即输出到管道中。
input是文件描述符的名称。它开放供以后阅读。
但是“ &&”符号中“&”符号的作用完全不透明
答案 0 :(得分:2)
但是“ &&”符号中“&”符号的作用完全不透明
exec
上的文档说:
在管道中分隔不同的命令。标准输出和 先前命令的标准错误将通过管道传递给 下一条命令的标准输入。这种重定向形式会覆盖 形式,例如2>和>&。
因此,与|
相比,|&
还将$command
的标准错误传递到cat
的标准输入中。