programing

bash curl 문에 '&' 문자를 포함하는 방법

mbctv 2023. 4. 21. 21:19
반응형

bash curl 문에 '&' 문자를 포함하는 방법

웹 페이지를 다운로드하기 위해 배시의 컬을 사용하려고 하는데&URL의 기호가 원하는 문자로 해석되지 않습니다.어떻게 하면 배쉬를 설득할 수 있을까?&그냥 재미없는 캐릭터일 뿐이고 특별한 건 없다?

URL 전체를 큰따옴표로 묶으면 문제가 해결됩니다.

curl "http://www.example.com?m=method&args=1"

& 를 GET URL 의 딜리미터로서 사용하고 있습니까?아니면 데이터 내에 있습니까?

데이터에 있는 경우 HTML 문자로 인코딩해야 합니다. 그렇지 않은 경우 따옴표로 둘러싸야 합니다.

부호화&가 되어야 한다%26를 참조해 주세요.

curl "http://www.example.com?m=this%26that

홑따옴표로 둘러싸다&기호가 작동하는 것 같습니다.즉, 다음과 같은 URL을 사용합니다.http://www.example.com/page.asp?arg1=${i}'&'arg2=${j}curl을 지정하면 요청된 웹 페이지가 반환됩니다.

다음과 같이 이스케이프 "&" 문자를 사용하는 대신 -d 파라미터를 사용하여 POST 요청에서 http url 파라미터를 지정할 수 있습니다.

curl -X POST http://www.example.com \
-d arg1=this \
-d arg2=that

요청이 GET인 경우 GET 요청과 함께 데이터를 전송하도록 컬링하는 -G 옵션도 추가해야 합니다.

curl -X GET -G http://www.example.com \
-d arg1=this \
-d arg2=that

사용할 수 있습니다.%26대신&엔티티 코드는 정상적으로 동작합니다.

매개 변수 사용--url큰따옴표를 붙여줘서

간단한 방법:

curl -X GET -G http://example.com -d var1=$1 -d var2=$2

언급URL : https://stackoverflow.com/questions/13339469/how-to-include-an-character-in-a-bash-curl-statement

반응형