컬 출력을 파일로 캡처하는 방법?


421

이 형식의 URL을 포함하는 텍스트 문서가 있습니다.

URL = "sitehere.com"

내가 찾고있는 것은 run을 실행 curl -K myfile.txt하고 Curl이 반환하는 응답의 출력을 파일로 얻는 것입니다.

어떻게해야합니까?


23
curl http://{one,two}.example.com -o "file_#1.txt" curl.haxx.se/docs/manpage.html
onmyway133

답변:


608
curl -K myconfig.txt -o output.txt 

지정한 파일에서받은 첫 번째 출력을 씁니다 (이전 출력이 있으면 덮어 씁니다).

curl -K myconfig.txt >> output.txt

수신 한 모든 출력을 지정된 파일에 추가합니다.

참고 : -K는 선택 사항입니다.


1
죄송합니다. 어쩌면 분명히해야 할 것입니다-모든 URL이 포함 된 문서의 형식은 myfile.txt이므로 curl -K myfile.txt를 실행하고 각 파일을 통해 실행되지만 출력을 파일로 가져 오지 않습니다.
Tony

22
명령 줄에 리디렉션을 사용합니다.curl url > destfile.x
wasatchwizard

1
내가 터미널에이 출력 여전히 표시 중 하나 수행 할 때, 파일에
크리스

5
@ kris 아마도 URL에 앰퍼샌드가있을 것입니다. URL을 큰 따옴표로 묶은 다음 시도해보십시오
jglouie

-K없이 작동합니다. 이를 통해 "URL을 지정하지 않았습니다"라는 메시지가 나타납니다.
Arya Pourtabatabaie

162

단일 파일 의 경우 URL 경로의 마지막 세그먼트를 파일 이름으로 사용하는 -O대신 사용할 수 있습니다 -o filename. 예:

curl http://example.com/folder/big-file.iso -O

결과를 현재 폴더의 big-file.iso 라는 새 파일에 저장 합니다. 이러한 방식으로 wget 과 유사하게 작동 하지만 wget을 사용할 때 사용할 수없는 다른 curl 옵션 을 지정할 수 있습니다 .


1
여러 파일의 경우 --remote-name-all unix.stackexchange.com/a/265819/171025
qwr

28

curl 출력을 파일로 만드는 몇 가지 옵션이 있습니다

 # saves it to myfile.txt
curl http://www.example.com/data.txt -o myfile.txt

# The #1 will get substituted with the url, so the filename contains the url
curl http://www.example.com/data.txt -o "file_#1.txt" 

# saves to data.txt, the filename extracted from the URL
curl http://www.example.com/data.txt -O 

# saves to filename determined by the Content-Disposition header sent by the server.
curl http://www.example.com/data.txt -O -J 

6

파일로 출력하는 대신 클립 보드에 cURL 출력을 복사하려는 경우 cURL 명령 뒤에 pbcopy파이프를 사용하여 사용할 수 있습니다 |.

예 : curl https://www.google.com/robots.txt | pbcopy. 지정된 URL의 모든 내용을 클립 보드로 복사합니다.


pbcopy는 MacOS에서만 사용할 수 있습니다. 그러나 리눅스xclip 대신 에이 질문을 참조하십시오 . 그러나 대부분의 경우 선호 curl http://example.com -o example_com.html & cat example_com.html | pbcopy 하므로 클립 보드를 실수로 지우면 다시 말리지 않아도됩니다.
lacostenycoder

페이로드의 크기가 확실하지 않은 경우에도주의해서 사용해야합니다. 예를 들어, 이것을 텍스트 편집기에 붙여 넣고 싶지는 않지만 vim에서 열면 아무런 문제가 없습니다. curl http://www.textfiles.com/etext/FICTION/fielding-history-243.txt | pbcopy어쩌면 이것을 시도하지 마십시오!
lacostenycoder

0

출력을 데스크탑에 저장하려면 git bash에서 post 명령을 사용하여 아래 명령을 따르십시오.

curl https : // localhost : 8080-요청 POST --header "콘텐츠 유형 : application / json"-o "C : \ Desktop \ test.txt"


-1

조금 늦었지만 OP가 다음과 같은 것을 찾고 있다고 생각합니다.

curl -K myfile.txt --trace-asci output.txt
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.