当前位置: 技术问答>linux和unix
关于文件长度的一个奇怪的问题
来源: 互联网 发布时间:2016-04-16
本文导语: 我在linux下,用vim编辑一个文件, 写了n个字符,然后用 ls -l 查看文件的大小,发现是n+1, 咋回事? 而保存空文件后, 文件大小是0. 还有文件结尾EOF是真正保存在文件后面的吗? 小弟在搜索中听说,EOF 其实不是一个...
我在linux下,用vim编辑一个文件, 写了n个字符,然后用 ls -l 查看文件的大小,发现是n+1, 咋回事? 而保存空文件后, 文件大小是0. 还有文件结尾EOF是真正保存在文件后面的吗?
小弟在搜索中听说,EOF 其实不是一个字符,
它只是一个标记,
一个 当读取操作出错的时候,读取函数返回的一个预定义的标记,
(比如定义一个函数,当出错时候返回的 -1 等一些特定的值)
而不是说在文件的最后面存在这么个EOF。那么这个文件结束是怎么得到的呢?恭请赐教。
小弟在搜索中听说,EOF 其实不是一个字符,
它只是一个标记,
一个 当读取操作出错的时候,读取函数返回的一个预定义的标记,
(比如定义一个函数,当出错时候返回的 -1 等一些特定的值)
而不是说在文件的最后面存在这么个EOF。那么这个文件结束是怎么得到的呢?恭请赐教。
|
多出来的那个字符一般是回车符号'n',你可用使用od -c命令查看一下你的文件,就可以知道多出来的是什么字符了。
|
vi写的文件,基本都会在行尾加上n的。