Os resultados do comando cat
devem ser expandidos usando substituição de comando .
A sintaxe do bash é:
curl -u "user:pass" --data '{"title":"test-key","key":"'"$(cat ~/.ssh/id_rsa.pub)"'"}' https://api.github.com/user/keys
Você também pode usar uma notação clássica de backtick:
curl -u "user:pass" --data '{"title":"test-key","key":"''cat ~/.ssh/id_rsa.pub''"}' https://api.github.com/user/keys