在此Tcl语句中“&”是什么意思

时间:2019-08-22 17:12:00

标签: pipe tcl

行是这样的:

if [catch {open "|$command |& cat"} input] {

这是来自http://www.beedub.com/book/2nd/TKEXAMPL.doc.html

的代码片段

到目前为止,$ command描述了一个命令管道。根据该教程页面,输出将通过管道传输到cat中,以将错误立即输出到管道中。

input是文件描述符的名称。它开放供以后阅读。

但是“ &&”符号中“&”符号的作用完全不透明

1 个答案:

答案 0 :(得分:2)

  

但是“ &&”符号中“&”符号的作用完全不透明

exec上的文档说:

  

在管道中分隔不同的命令。标准输出和   先前命令的标准错误将通过管道传递给   下一条命令的标准输入。这种重定向形式会覆盖   形式,例如2>和>&。

因此,与|相比,|&还将$command的标准错误传递到cat的标准输入中。