`curl -O` 存储了一个空文件,尽管 `wget` 工作正常

`curl -O` 存储了一个空文件,尽管 `wget` 工作正常

我曾尝试从 下载一个文件https://logz.io/sample-data

curl -O https://logz.io/sample-data

但是,它只是返回一个名为的空文件sample-data

相比之下curlwget返回包含正确内容的文件效果很好。

wget https://logz.io/sample-data 

我错过了什么curl

答案1

您错过了遵循重定向,curl因为 URL 端点被重定向 (301) 到另一个端点 ( );使用 HEAD 方法 ( ) 向指定 URLhttps://s3.amazonaws.com/logzio-elk/apache-daily-access.log发送请求:-I

% curl -LI https://logz.io/sample-data
HTTP/1.1 301 Moved Permanently
...
...
Location: https://s3.amazonaws.com/logzio-elk/apache-daily-access.log
...

HTTP/1.1 200 OK
...
...
Server: AmazonS3

由于curl默认情况下不遵循 HTTP 重定向,因此您需要curl使用-L/--location选项来执行此操作:

curl -LO https://logz.io/sample-data

默认情况下,重定向如下wget,你将使用wget 原样

相关内容