curl -O로 받았는데 파일 크기가 0인 경우가 있는데 보통은 30x redirect인 경우 입니다. (cdn 또는 trailing slash 등)
-L, --location
(HTTP) If the server reports that the requested page has moved to a different location (indicated with a Location: header and a 3XX response code), this option will make curl redo the request on the new place. If used together with -i, --include or -I, --head, headers from all requested pages will be shown. When authentication is used, curl only sends its credentials to the initial host. If a redirect takes curl to a different host, it will not be able to intercept the user+password. See also --location-trusted on how to change this. You can limit the amount of redirects to follow by using the --max-redirs option.
When curl follows a redirect and if the request is a POST, it will send the following request with a GET if the HTTP response was 301, 302, or 303. If the response code was any other 3xx code, curl will re-send the following request using the same unmodified method.
You can tell curl to not change POST requests to GET after a 30x response by using the dedicated options for that: --post301, --post302 and --post303.
The method set with -X, --request overrides the method curl would otherwise select to use.
Providing -L, --location multiple times has no extra effect. Disable it again with --no-location.
Example:
curl -L https://example.com
See also --resolve and --alt-svc.
참고: https://curl.se/docs/manpage.html
curl에 L(location) option을 붙이면 30x response가 왔을 때 다시 요청합니다.
즉 curl -LO {url} 형식으로 쓰면 됩니다
Reference
- https://askubuntu.com/questions/1036484/curl-o-stores-an-empty-file-though-wget-works-well
반응형
'OS > Linux' 카테고리의 다른 글
SSH Key 핑거프린트 확인 방법 (0) | 2022.10.27 |
---|---|
Ubuntu 버전 확인 방법 (0) | 2020.08.02 |
Ubuntu "System restart required" 메시지가 나올 때 (0) | 2020.08.02 |
리눅스 메모리 사용량 확인법 (free 커맨드) (0) | 2020.07.24 |
JPS 이용해서 자바 프로세스 킬하는 법 (0) | 2017.01.30 |