I've always trouble uploading files with Curl. Some how the syntax for that command won't stick, so I post it here for future reference.
What I want to do is perform a normal
POST, including a file and some other variables to a remote server. This is it:
curl -i -F name=test -F firstname.lastname@example.org http://example.org/upload
You can add as many
-F as you want. The
-i option tells curl to show the response headers as well, which I find useful most of the time.