Another solution which is a bit cleaner – just specify a different work tree.
To checkout everything from your HEAD (not index) to a specific out directory:
git --work-tree=/path/to/outputdir checkout HEAD -- .
To checkout a subdirectory or file from your HEAD to a specific directory:
git --work-tree=/path/to/outputdir checkout HEAD -- subdirname