码迷,mamicode.com
首页 > 系统相关 > 详细

linux的描述符

时间:2016-12-15 01:20:38      阅读:166      评论:0      收藏:0      [点我收藏+]

标签:linux   显示器   定向   先来   描述符   

        linux系统每个对像当做文件来处理。这包括输入和输出的过程。linux用文件描述来标识每个文件对象。文件描述符是一个非负整数,可以唯一地标识会话中打开的文件。每个过程一次最多可以有9个文件描述符。出于特殊目的。bash shell保留了最早的3个文件描述符{0,1,2}分别对应{STDIN,STDOUT,STDERR}表示为标准输入、标准输出、标准错误。我们先来一段代码看看

 1 #!/bin/bash
  2 exec 3>&1                                                创建文件描述符3取stdin的值,也就是说所有重定向3的都

                                                                       将在显示器上显示
  3 exec 1>inputfile                                        创建输入重定向到inputfile中
  4 exec 2>errorfile                                        创建stderror指向的文件
  5 echo "this is a mao shu fu"                      这一句是输入,输出到inputfile文件中                     
  6 echo "look at this example"                     这一句同上
  7 echo "this is error1" >&2                          这一句指定到错误的文件夹中,这里是指errorfile
  8 echo "this is error2" >&2                          这一句同上
  9 exec 1>&3                                                  文件描述3本来指 stdin也就是显示

                                                                          器,1本来指向的文件,这语句也

                                                                          就是说让1重新指向显示器,这样

                                                                          以后的echo就会显示出来,要不

                                                                          然显示的在inputfile文件中                                          
 10 exec 5<&0
 11 exec 0<errorfile
 12 while read line
 13 do
 14         echo "this is errorfile content $line"    这句能输出在显示器上,全靠第9句
 15 done
 16 exec 0<&5
 17 echo "the script end"                                     这句能输出在显示器上,也靠第9句

 

linux的描述符

标签:linux   显示器   定向   先来   描述符   

原文地址:http://knowledgeq.blog.51cto.com/9549168/1882851

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!