这与我的所有搜索都不断给出答案的问题相反,人们想要纯文本,但被压缩了。
我正在编写一个 bash 脚本,它使用 curl 从 Mailman 邮件列表中获取邮件列表存档文件(使用服务器端的标准 Mailman Web 界面)。
该文件(本月)是http://lists.example.com/private.cgi/listname-domain.com/2013-September.txt.gz(净化的 URL)。
当我用浏览器保存它时,事实上,我得到了一个 gzip 压缩的文本文件,它在解压缩时包含我期望的内容。
但是,当我使用 Curl 获取它时(在之前发送登录密码并获取 cookie 集,并保存该 cookie 文件以在请求中使用之后),stdout(或保存到 -o 文件)出来的是 UNCOMPRESSED文本。
如何让 Curl 像浏览器一样将数据保存到文件中?(请注意,我在 Curl 调用中没有使用 --compressed 标志;这不是服务器压缩数据以进行传输的问题,而是下载压缩在服务器磁盘上的文件的问题,我想保留它压缩。)
(显然,我可以通过在我的 bash 脚本中重新压缩它来解决这个问题。浪费 CPU 资源,以及等待将来发生的问题。或者我可以不压缩它,并破解名称并将其存储为September.txt;这反而浪费了磁盘空间。同样,如果将来行为发生变化,那将会中断。在我看来,问题在于 Curl 在压缩传输和实际压缩数据之间感到困惑。)