아래의 컬 루프 명령을 사용하여 일부 API REST 요청을 수행하려고 합니다. 내부에 REST 요청이 포함된 첫 번째 URL 목록을 사용하면 완벽하게 작동합니다. 두 번째 URL 목록을 사용할 때 "curl: (3) URL에서 잘못된 문자가 발견되었습니다."라는 메시지가 나타납니다.
for i in `rest_a_url_list` ; do curl -H "Content-Type: application/json" -H "Auth-Token: $token" $i ; done
첫 번째 URL 목록에는 다음 줄이 포함되어 있습니다. https://some.api.net/REST/ARESTCOMM/x/ 두 번째 목록: https://some.api.net/REST/BRESTCOMM/x/x/xxxx
또한 컬 루프 출력을 bash 스크립트와 "bash -x myfile.sh"에 넣으려고 시도했지만 잘못된 문자 오류도 발생했습니다. 그러나 파일을 정리하고 실행할 몇 줄을 복사하면 작동합니다.
Bash -x 출력은 복식 대신 몇 가지 간단한 따옴표를 제공하고 URL 앞에 '$'를 넣습니다. 컬 -D -H -X GET -H 'Content-Type: application/json' -H 'Auth-Token: $ token' $'URL'
여러 번 테스트했는데 매번 같은 결과가 나왔습니다. 어쩌면 이것을 달성하는 다른 방법이 있을 수도 있지만, 이 모든 것이 나를 혼란스럽게 하기 시작했습니다. 내가 뭘 잘못하고 있는지 어떤 아이디어가 있습니까?
답변1
죄송합니다. 이 파일을 루프에서 사용하기 전에 sed 및 tr'd했기 때문에 url_list 파일에 잘못된 문자가 있습니다. 이제 모든 것이 괜찮습니다.