Windows与Linux下curl下载零大小文件的行为差异咨询
curl在Windows与Linux下载零字节文件的行为差异分析
现象说明
Windows 10环境下,curl可成功下载零字节文件:
执行命令:curl -v --max-filesize 30001 -o C:\Users\erik\Documents\temp\t1\abc.zip file://C:\Users\erik\Documents\test\t1.zipcurl版本信息:
curl 7.83.1 (Windows) libcurl/7.83.1 Schannel Release-Date: 2022-05-13Linux环境下,相同命令无法下载该零字节文件:
执行命令:curl -v --max-filesize 30001 -o /home/erik/temp/test/te.zip file:///home/erik/FileSizeZeroTest/t1.zipcurl版本信息:
curl 7.37.0 (x86_64-suse-linux-gnu) libcurl/7.37.0 OpenSSL/1.0.2j zlib/1.2.8 libidn/1.28 libssh2/1.4.3
结论
你的判断正确,curl在Windows与Linux系统下处理零字节文件结合--max-filesize参数时确实存在行为差异。这种差异源于不同平台下curl对本地文件大小检测的实现逻辑不同:旧版本Linux curl在处理零字节文件时,会错误判定其超出--max-filesize限制(即便阈值远大于0),而Windows版本的curl能正确识别零字节文件并允许下载。
内容的提问来源于stack exchange,提问作者atulya
相关产品推荐
相关产品推荐

