ftp 服务器文件大小差异与实际文件大小

ftp 服务器文件大小差异与实际文件大小

我正在连接到 FTP 服务器来下载一些 gzip 压缩文件,然后我注意到 SIZE 命令有些令人不安,而且我的 google-fu 让我失望了。

ftp> size file0001.xml.gz
213 2524751

ftp> nlist -ltr
...
-rw-r--r--   1 anon  anons    2515727 Jan 30 00:00 file0001.xml.gz
...

如您所见,文件大小不同(2524751 != 2515727)。为什么?

我简要地读了一下RCF0959 文件传输协议 (FTP)并且没有提到 SIZE 命令,后来我发现这是该协议的非标准添加。

为了方便起见,以下是 RFC 中有关字节大小的部分:

  byte size

     There are two byte sizes of interest in FTP:  the logical byte
     size of the file, and the transfer byte size used for the
     transmission of the data.  The transfer byte size is always 8
     bits.  The transfer byte size is not necessarily the byte size
     in which data is to be stored in a system, nor the logical byte
     size for interpretation of the structure of the data.

我在这里遗漏了什么?

谢谢!

马哈茂德

答案1

您是否已将 ftp 切换为binary模式?ftp 可能会计算行尾更改的大小?

2524751/2515727 * 255 = 255.91469384396638

因此看起来原始文件每 255 个字节都会额外增加 0.9 个字节 - 刚好足够将压缩文件转换\n\r\n

相关内容