bash에서 curl을 사용하여 웹 페이지를 다운로드하려고하는데 &
URL 의 기호가 원하는대로 문자로 해석되지 않습니다. 기호 &
가 지루하고 특별한 것이 아니라고 bash를 설득하는 방법에 대한 아이디어 가 있습니까?
답변
전체 URL을 큰 따옴표 안에 넣으면 문제가 해결됩니다.
답변
curl "http://www.example.com?m=method&args=1"
&를 GET URL의 구분 기호로 사용하고 있습니까? 아니면 데이터에 있습니까?
데이터에있는 경우 HTML 문자로 인코딩해야합니다. 그렇지 않은 경우 따옴표로 묶어야합니다.
에 대한 인코딩 은 URL 에 &
있어야합니다 %26
.
curl "http://www.example.com?m=this%26that
답변
&
기호 주위에 작은 따옴표를 넣으면 작동하는 것 같습니다. 즉, http://www.example.com/page.asp?arg1=${i}'&'arg2=${j}
curl 과 같은 URL을 사용 하면 요청 된 웹 페이지가 반환됩니다.
답변
이스케이프 “&”문자를 시도하는 대신 아래와 같이 -d 매개 변수를 사용하여 POST 요청에 http url 매개 변수를 지정할 수 있습니다.
curl -X POST http://www.example.com \
-d arg1=this \
-d arg2=that
요청이 GET이면 curl에 GET 요청과 함께 데이터를 전송하도록 지시하는 -G 옵션도 추가해야합니다.
curl -X GET -G http://www.example.com \
-d arg1=this \
-d arg2=that
답변
%26
대신 사용할 수 있습니다 &
. 엔티티 코드가 제대로 작동합니다.
답변
--url
큰 따옴표와 함께 매개 변수 를 사용하십시오.