首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Emacs中使用url-retrieve下载tar.gz文件?

如何在Emacs中使用url-retrieve下载tar.gz文件?
EN

Stack Overflow用户
提问于 2013-03-23 08:39:46
回答 1查看 582关注 0票数 1

我正在使用el-get,但el-get-install color- to失败。经过研究,我发现el-get下载的color-theme-6.6.0.tar.gz文件是不完整的。使用el-get下载的文件的大小为124853,如果使用wget下载文件,则大小为124858

然后我发现el-get正在使用url-retrieve来下载包。所以我在*scratch* buffer中评估了这段代码。

代码语言:javascript
复制
(url-retrieve
 "http://download.savannah.gnu.org/releases/color-theme/color-theme-6.6.0.tar.gz"
 (lambda (s)
   (write-file "/home/jxq/data/tmp")))

文件/home/jxq/data/tmp现在包含HTTP头和正文。http头部长度为279,整体大小为125132。因此,它检索到的tar.gz的文件大小是124853。丢失的5个字节在哪里?

这是url检索中的一个bug,还是我用错了?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-23 18:41:32

在编写之前,您需要跳过HTTP标头(文档将其称为"MIME标头“):

代码语言:javascript
复制
(url-retrieve
 "http://download.savannah.gnu.org/releases/color-theme/color-theme-6.6.0.tar.gz"
 (lambda (s)
   (re-search-forward "\r?\n\r?\n")
   (write-region (point) (point-max) "/tmp/bla")))

此版本保存与Wget相同的内容。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15582015

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档