The simplest way to upload multiple files ( = many) is to mount the Alfresco Instance and copy files via CIFS/SMB.
This is a copy method, so datestamps etc. will be dated with the current (copy) date-time, original filedates will not be preserved
root@myserver:/data/tmp# mount -t cifs -o username=admin,password=****** //127.0.0.1/alfresco/ /mnt root@myserver:/data/tmp# cd /mnt root@myserver:/mnt# ls -l total 385 -rwxr-xr-x 1 root root 393216 Dec 9 13:36 __CheckInOut.exe drwxr-xr-x 2 root root 0 Dec 8 09:58 Data Dictionary drwxr-xr-x 2 root root 0 Dec 8 09:58 Guest Home drwxr-xr-x 2 root root 0 Dec 8 09:58 Imap Attachments drwxr-xr-x 2 root root 0 Dec 8 09:58 IMAP Home drwxr-xr-x 2 root root 0 Dec 8 09:58 Shared drwxr-xr-x 2 root root 0 Dec 8 21:01 Sites drwxr-xr-x 2 root root 0 Dec 8 20:15 User Homes root@myserver:/mnt# cd Sites/ root@myserver:/mnt/Sites# ls -l total 386 -rwxr-xr-x 1 root root 393216 Dec 9 13:36 __CheckInOut.exe drwxr-xr-x 2 root root 0 Dec 8 21:35 familie-billeder drwxr-xr-x 2 root root 0 Dec 8 20:15 public drwxr-xr-x 2 root root 0 Dec 8 10:35 sample-site drwxr-xr-x 2 root root 0 Feb 15 2011 swsdp root@myserver:/mnt/Sites# cd public/ root@myserver:/mnt/Sites/public# cd documentLibrary/ root@myserver:/mnt/Sites/public/documentLibrary# cp -R /data/tmp/* . root@myserver:/mnt/Sites/public/documentLibrary
And all files and directories from /data/tmp/* is uploaded to the server and can be seen in the Web-interface.
Rsync also works, but the --ignore-times must be used, as the source time and date are not keept in Alfresco, otherwise the rsync will take the full sync every time.
root@myserver:/mnt/Sites/public/documentLibrary# rsync -avz --size-only --ignore-times --no-links user@myserver2:/data/
or serious deletion:
root@myserver:/mnt/Sites/public/documentLibrary# find . -type d -name thumbs -exec rm -rf {} \;