如何从Windows命令行向ncat.exe发送以下命令?
以下命令正常工作。
echo GET /main/main.js HTTP/1.1BHost: www.example.comBConnection: closeBB | tr "B" "\n" | ncat -C www.example.com 80
我认为以下请求因为&符号而无法正常工作。
echo GET /main/main.js?param1=true^¶m2=true HTTP/1.1BHost: www.example.comBConnection: closeBB | tr "B" "\n" | ncat -C www.example.com 80
如果有任何解决办法逃脱&符号?我一直在尝试这样的事情,但无济于事。
set "req=GET /main/main.js?param1=true^¶m2 HTTP/1.1\nHost: www.example.com\nConnection: close\n\n"
echo %req% | tr "B" "\n" | ncat -C www.example.com 80
答案 0 :(得分:1)
在您想要echo
的字符串周围使用双引号,即:
echo "GET /main/main.js?param1=true^¶m2=true HTTP/1.1BHost: www.example.comBConnection: closeBB" | tr "B" "\n" | ncat -C www.example.com 80
但作为对tr
内容的改进,最好使用以下内容:
echo -e "GET /main/main.js?param1=true^¶m2=true HTTP/1.1\r\nHost: www.example.com\r\nConnection: close\r\n\r\n" | ncat -C www.example.com 80
假设Windows上的echo命令支持“-e”标志。