Chinaunix首页 | 论坛 | 博客
  • 博客访问: 177773
  • 博文数量: 39
  • 博客积分: 929
  • 博客等级: 准尉
  • 技术积分: 500
  • 用 户 组: 普通用户
  • 注册时间: 2011-09-06 11:16
个人简介

文章分类

全部博文(39)

文章存档

2013年(3)

2012年(28)

2011年(8)

我的朋友

分类: LINUX

2012-03-29 13:28:17

一直没怎么弄明白shell操作文件描述符的问题,昨天又看了看,还是不怎么明白,真是太笨了。
先把自己理解的记录下:

0 stdin
1 stdout
2 stderr

这个编号可以设定,/etc/security/limits.conf。
exec n>./tt.file   将文件tt.file和n号描述符关联,文件只作为输入用途
date >&n   将date输出定向到n描述符,也即是文件tt.file
exec n<./tt.file   将文件tt.file和n号描述符关联,文件只作为输出用途
exec n<>./tt.file  将文件tt.file和n号描述符关联,文件作为输入输出用途

n<&- n>&- 任意一个关闭描述符n,不能再读写了。
如果文件的用途用错了:
读的,当成写的:
date >&4
date: write error: Bad file descriptor
写的,当成读的:
read -n 10 b <&4
-bash: read: read error: 0: Bad file descriptor
如果关闭标准输入了,就会logout
exec 0<&-
如果关闭标准输出了,都不知道如何再打开了?date: write error: Bad file descriptor
exec 1>&-
如果关闭标准错误了,就没反应了。。。

==end




阅读(4367) | 评论(2) | 转发(0) |
0

上一篇:pdb调试django app

下一篇:komodo svn

给主人留下些什么吧!~~

chaoxiangliu2012-04-25 11:45:09

我是月老: 读的,当成写的,写的,当成读的…….....
呵呵,表述不清楚,< 样的目的是用来读的,>样的目的是用来写的,这样理解有问题吗?

我是月老2012-03-30 01:03:43

读的,当成写的,写的,当成读的……