git repo의 tar를 다운로드하고 해당 내용을 다른 폴더에 추출하고 싶습니다.
다음 줄(명확성을 위해 구분됨)이 작동합니다.
curl -L -0 nt-dotfiles.tar.gz https://api.github.com/repos/nicktomlin/laptop/tarball \
| tar --strip-components=1 -zx -C ~/Documents/dotfiles
그러나 다음과 같은 오류가 발생합니다.
curl: (6) Could not resolve host: nt-dotfiles.tar.gz; nodename nor servname provided, or not known
그대로 놔둬도 괜찮지만(여전히 작동하기 때문에) 오류가 궁금하고 사라지면 기분이 더 좋을 것 같습니다.
감사해요!
답변1
구문은 다음과 같아야 합니다. curl -L -o nt-dotfiles.tar.gz https://api. ...
소문자 'Oh' 대신 0을 사용하고 있습니다. 0은 컬이 http1.0을 사용하도록 강제합니다. 'o'는 출력 파일 이름을 제공합니다.
매뉴얼 페이지에서:
-0, --http1.0
(HTTP) Forces curl to issue its requests using HTTP 1.0 instead
of using its internally preferred: HTTP 1.1.
-o, --output <file>
Write output to <file> instead of stdout. If you are using {} or
[] to fetch multiple documents, you can use '#' followed by a
number in the <file> specifier. That variable will be replaced
with the current string for the URL being fetched. Like in:
curl http://{one,two}.site.com -o "file_#1.txt"
답변2
다음을 시도해 볼 수 있습니다.
$ curl -s http://example.com/file.tgz | tar xvf - -C dest/