当前时区 GMT+8, 现在时间是 2008-9-7 03:06 游客: 注册 登录 仅登录论坛 | 搜索 帮助


标题: 请教一个linux中的文件操作问题
Hanestt
新手上路
Rank: 1



UID 248062
精华 0
积分 1
帖子 1
阅读权限 10
注册 2008-3-23
状态 离线
发表于 2008-3-23 12:34  资料  短消息  加为好友 
请教一个linux中的文件操作问题

linux中用程序实现定时定量写文件,在过程中使用vi 编辑当前文件,保存退出后,当前文件继续写入失败,直到切换新文件,写入才恢复正常,请问是什么原因?

使用的是suse linux; 在sun和ibm aix的unix中同样的操作/代码却没有这个问题!
vi 编辑保存后发现 文件硬连接数为0了,但该文件好像并没有删除;

是否跟linux 中vi的实现有关系,是否有这么一说:
vi打开一个文件时,会将文件的内容读到内存中,而我们对此文件的修改都是在内存中进行的,等到我们要保存时,vi会新建一个空文件,然后将内存中的内容全都写到这个新建的文件中,最后将老文件删掉。之所以这么做,可能是考虑到效率的问题。因为对一个已有的文件进行写操作,不如直接写一个空文件来得效率高。

请教专家指导!!

顶部
 


Powered by Discuz! 5.5.0  © 2001-2007 Comsenz Inc.
清除 Cookies - 联系我们 - 中国Linux公社 - WAP