请教一个SHELL命令?

cc calc.c >& error_out  
//将输出流和错误流同时定向到error_out文件中.这时编译过程中的
  提示信息和错误信息都存入error_out文件中,不再输出到显示器上.

cc newcalc.c >&! error_out

这个多了一个! ,又是什么意思?