Just a note that the GEOquery bioconductor package does this for a living, if you happen to be targeting R for further processing/analysis. See the help for getGEOSuppFiles() and getGEO().
The -r option in the wget command stands for "recursive," and tells wget to download files recursively from the specified FTP directory.
The --cut-dirs option tells wget to cut off the specified number of directories from the beginning of the directory hierarchy when saving the downloaded files. In the example command I provided, --cut-dirs=3 tells wget to remove the first three directories from the path of the downloaded files.
check out the tool aspera. GEO supports it. http://www.ncbi.nlm.nih.gov/books/NBK47527/
The download speed will blow you away.
You can also check out cURL: http://curl.haxx.se/
You can automate any task with CRON on unix plateforms.