Ssh

curl 通過 ssh 給出錯誤的結果

  • May 23, 2014

Curl 在節點本身上執行良好:

[ec2-user@smokebase1 ~]$ curl -s -I --retry 3 --header 'Host: smoke-base.dev-test.com' localhost:8080/test/api/search?where=where%20%2Fxml%2Fitem%2Fcategory%20is%20not%20%27dog%25%27 | grep "HTTP/1.1 200 OK" | wc -l
1
[ec2-user@smokebase1 ~]$ exit
logout
Connection to 10.4.11.14 closed.

但是雖然沒有使用 ssh 命令給出正確的結果

[vsha@ip-10-4-11-25 ~]$  ssh ec2-user@10.4.11.14 'curl -s -I --retry 3 --header 'Host: smoke-base.dev-test.com' localhost:8080/test/search?where=where%20%2Fxml%2Fitem%2Fcategory%20is%20not%20%27dog%25%27 | grep "HTTP/1.1 200 OK" | wc -l'
0

您的問題幾乎肯定與引用有關。通過嘗試使用'整個 ssh 命令行,它們將與您的 curl 命令中已經存在的那些匹配並產生意想不到的結果。

您可以嘗試更改 curl 命令中的'for"然後將整個 ssh 命令包裝在'

引用自:https://serverfault.com/questions/598011