내가 달릴 때
curl example.com > example.html
터미널에서 내가 얻는 진행률 표시기는 다음과 같습니다.
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 1256 100 1256 0 0 1950 0 --:--:-- --:--:-- --:--:-- 1947
100 1256 100 1256 0 0 1950 0 --:--:-- --:--:-- --:--:-- 1947
~에 따르면https://curl.se/docs/manpage.html이 메시지가 표시되려면 컬 stdout을 파일로 리디렉션해야 합니다. "HTTP POST 또는 PUT 요청에 대한 진행률 측정기를 원하는 경우 쉘 리디렉션(>), --output 또는 이와 유사한 기능을 사용하여 응답 출력을 파일로 리디렉션해야 합니다."
curl example.com 2> progress.txt
에는 데이터가 없습니다 progress.txt
. 그러므로 나는 달려야한다
curl example.com > example.html 2> progress.txt
컬 표준 출력을 파일로 리디렉션하지 않고 진행률 표시기에 액세스하는 방법은 무엇입니까?
답변1
데이터를 다른 프로그램으로 전송하면 진행률 표시기가 나타납니다. 기본
curl example.com | cat
작동하지만 결과가 길어지면 문서에 언급된 문제가 발생하게 됩니다.
그것장애를 입히다진행률 측정기, 그렇지 않으면 출력 믹싱 진행률 측정기와 응답 데이터가 엉망이 됩니다.
이를 방지하려면 sponge
(from더 많은 유틸리티, 대부분의 배포판에서 사용 가능):
curl example.com | sponge