2011年(6)
分类: LINUX
2011-02-14 09:13:02
ls -lR /data > mylist1 > mylist2 2>&1
ls -lR /data 2>&1 | tee mylist1 > mylist2
ls -lR /data | tee mylist 1 > mylist2 2>&1
答案时第二个。
知识点:三通
标准输入
标准输出
重定向
全部实现,既三通
管道符号不能传递标准错误,可是用过2>&1 后,标准错误成标准输出了。
命令执行的顺序是
ls -lR /data 2>&1
然后执行|
然后是 tee mylist1 > mylist2
为什么保存有保存到mylist2是因为使用tee命令后,又有输出,那么>mylist2就是保存的你这个时候的输出的~
>mylist1 2>&1
2>&1 >mylist1
得到的结果是有区别的
2>&1 >mylist1这个先执行标准错误到标准输出(即终端),再执行标准输出到文件mylist1
就会在屏幕上看到错误,但文件mylist1里没有错误。