我要如何将csh的stdout与stderr导向到不同的地方呢?

2006-03-05 10:35:42  作者
在 csh 中,用 ">" 将 stdout 导向,用 ">%26" 则能将 stdout 与 stderr 
 一起导向。可是不能只单独把 stderr 转向。最好的方法是 
 
         ( command >stdout_file ) >%26stderr_file 
 
 以上的命令会开一个 subshell 执行 "command";而这个 subshell 的 
 stdout 则被转向到 stdout_file,同时这个 subshell 的 stdout 和 
 stderr 则都被转向到 stderr_file,但是因为 stdour 已经先被转向了, 
 所以 stderr 就会被转到 stderr_file 了。 
 
 假如你只是单纯的不想把 stdout 做转向,那么就用 sh 来帮你吧。 
 
         sh -c 'command 2>stderr_file'