![답변:curl --http0.9 example.com/test.txt](https://linux55.com/image/147948/%EB%8B%B5%EB%B3%80%3Acurl%20--http0.9%20example.com%2Ftest.txt.png)
현재 일부 원시 텍스트를 시험해보고 curl
터미널에서 해석된 ANSI 색상으로 표시하고 있습니다.
curl http://example.com/test.txt
현재 실제 URL이 아닌 실행 시 다음이 반환됩니다.
\033[0;31mTEST\033[0m
그것은 내가 찾고 있는 것이 아닙니다. 내가 반환할 것으로 예상했던 것은 실행했을 때 빨간색으로 echo -e "\033[0;31mTEST\033[0m"
표시 되는 것입니다.TEST
curl
내 질문은: ANSI 색상 코드를 해석하여 사용할 때 예상한 대로 색상이 터미널에 올바르게 표시되도록 하는 방법이 있습니까 echo -e
?
답변1
이것이 최선의 접근 방식인지는 확실하지 않지만 명령 대체를 사용하는 것이 잘 작동하는 것 같습니다(조금 투박하더라도).
echo -e "$(curl -s http://example.com/test.txt)"
이것이 미래에 사람들에게 도움이 되기를 바랍니다. curl -sL
단축 URL을 처리하는 경우에는 이 방법이 작동합니다 .
답변2
답변:curl --http0.9 example.com/test.txt
컬 7.66.0부터 원시 텍스트는 기본적으로 거부됩니다. 다음에 추가--http0.9문제를 풀다. 다음은 netcat을 사용하여 웹 서버를 위조하는 예입니다.
echo $'\e[0;31mTEST\e[0m' | nc -l -p 8080 -q0 &
curl --http0.9 localhost:8080
또 다른 답변:nc example.com 80
Netcat은 네트워크 서버에서 텍스트를 얻을 수도 있습니다. 그러나 HTTP를 지원하지 않으므로 약간 까다롭습니다.
printf "GET / HTTP/1.0\nHost: example.com\n\n" | nc -C example.com 80