Close
For the Windows shell, you need to use double quotes.

curl http://moe.imouto.org/post/create.xml -H "Expect:" -F "login=name" -F "password_hash=hash" -F "post[tags]=moo" -F "post[file]=@filename"

Don't forget the @ before the filename.

You can also do -F user[name]=name -F user[password]=password, to avoid having to look up your hash.

Set the rating, too; either add -F post[rating]=e, or the "rating:e" metatag.

You don't type this in for every file; make a script to do it, eg.

@echo off
curl http://moe.imouto.org/post/create.xml -H Expect: -F post[file]=@%1 -F post[tags]=%2 -F user[name]=user -F user[password]=pw

... and then just make a script where you can fill in the tags in advance:

@echo off
call upload.bat file01.jpg "tag1 tag2 rating:3"
call upload.bat file02.jpg "tag1 tag3 rating:3"
call upload.bat file03.jpg "tag1 tag4 rating:3"

(quotes around the filename too if it contains spaces)

Personally, I recommend spreading larger batches across several days. It gives people more a chance to look through them; if five pages of the index are the same pool, many people are going to gloss over a lot of them.