Slightly simpler option as of 2.6+ is to now add an $out step to your aggregate to put the results into a collection:
db.collection.aggregate( [ { aggregation steps... }, { $out : "results" } ] )
Then just use mongoexport as:
mongoexport -d database -c results -f field1,field2,etc --csv > results.csv
After that you might want to delete the temporary collection from the database so that it does not keep using unnecessary resources, and also to avoid confusion later, when you have forgotten why this collection exists in your database.
db.results.drop()