[英]Help with a curl command and reading from a file
我有一个curl命令,需要发一个帖子并发送我的ssh密钥作为其中一个参数,我使用的命令如下所示:
SSH_KEY=`cat ~/.ssh/id_rsa.pub`;
curl -d "login=username&token=apikey&title=test&key=$SSH_KEY" http://github.com/api/v2/yaml/repos/key/username/somerepo/add
问题是ssh键中有一个+
,字符串在该点终止,我该如何避免这种情况?
显然在版本7.18.0 curl中添加了--data-urlencode选项:
curl --data-urlencode "login=username&token=apikey&title=test&key=$SSH_KEY" http://github.com/api/v2/yaml/repos/key/username/somerepo/add
使用--data-urlencode
而不是-d
。
urlencode()
我认为你在寻找什么? 您可以使用字符串上的urlencode()自动替换特殊字符。
http://php.net/manual/en/function.urlencode.php了解更多信息。
还有更多信息:curl.haxx.se/docs/manpage.html页面搜索: urlencode
希望有帮助:)
要发送文件,请在文件名前添加“@”
curl -d "login=username&token=apikey&title=test&key=@~/.ssh/id_rsa.pub" \
http://github.com/api/v2/yaml/repos/key/username/somerepo/add
希望这可以帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.