У меня есть команда curl, которая должна создать сообщение и отправить мой ключ ssh в качестве одного из параметров. Используемая мной команда выглядит так:+ в ключе 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.
--data-urlencode
-d
Чтобы отправить файл, добавьте '@' перед именем файла
curl -d "login=username&token=apikey&title=test&key=@~/.ssh/id_rsa.pub" \ http://github.com/api/v2/yaml/repos/key/username/somerepo/add
Надеюсь, это поможет.
urlencode()
Это то, что я думаю, что вы ищете?Вы можете автоматически заменить специальные символы, используя urlencode () в строке.
http://php.net/manual/en/function.urlencode.php для получения дополнительной информации.
Также дополнительная информация о: curl.haxx.se/docs/manpage.html поиск страницы для: urlencode
Надеюсь, что поможет:)