怎么把stdout和stderr分别重定向给tee?

比如用 $ ls true false
(true文件存在而false文件不存在)。
如果只是简单地分别重定向,就是 $ ls true false >file1 2>file2
可是如果利用管道和tee,怎么实现stdout和stderr分别写到file1和file2,又同时在屏幕上输出?(ls true false 2>&1 | tee file不能把stdout和stderr分开,唉)
哪位兄台指点一条明路?