bash中的2>&1需要摆放在命令的最后面

比如:testcommand >> output 2>&1

如果是这样:testcommand 2>&1 >> output,这样的话,stderr的输出还是会被打印到屏幕上。因为在解析到2>&1的时候,此时1这个FD还是stdout而不是output这个文件,所以,需要将2>&1放到命令的后面,至少要放到1这个FD已经被重定向之后。

posted @ 2012-05-10 23:27  super119  阅读(245)  评论(0编辑  收藏  举报