无法使用System.cmd从Elixir中运行curl命令

时间:2016-07-17 06:33:25

标签: curl command system elixir

我只是想尝试使用Elixir来运行具有特定格式的curl命令。

$ curl -w "@config/curl-format.txt" -o /dev/null -s "http://wordpress.com/"
0.004, 0.017, 0.000, 0.017, 0.000, 0.029, 0.029

直接从终端运行命令可以正常工作。

这就是我在Elixir中要做的事情:

args = ["-w config/curl-format.txt", "-o /dev/null", "-s", "http://wordpress.com"]
result = System.cmd("curl", args, [])

但我明白了:

{" config/curl-format.txt", 23}

与上述结果不一样。

1 个答案:

答案 0 :(得分:4)

您的System.cmd调用与shell语法等效:

curl "-w config/curl-format.txt" "-o /dev/null" -s http://wordpress.com

您需要传递-wconfig/curl-format.txt-o/dev/null作为不同的参数。您还错过了@中的@config/curl-format.txt。这应该有效:

args = ["-w", "@config/curl-format.txt", "-o", "/dev/null", "-s", "http://wordpress.com"]
result = System.cmd("curl", args, [])