To download files or directories, use --restore. Here are a few examples:
SpiderOakONE --restore=/path/to/foobar.txt restores the most recent version of foobar.txt to SpiderOak One's default download directory.
SpiderOakONE --restore=/path/to/foobar.txt --output=/path/to/where/you/want restores the most recent version of foobar.txt to the specified directory. This and the previous example use files but they also work for restoring a directory.
The previous examples assume you want to download a file that was backed up from the computer you are seated at. If you instead want to download a file that was backed up from a different computer, first determine the number (not name) of the desired computer with
--userinfo. Then give a command similar to the previous examples but using the option
--device to specify the desired computer's number. So for example to download anotherfile.txt that had been uploaded from device number 2, use
SpiderOakONE --device 2 --restore=/path/to/anotherfile.txt.
You will notice that it does not by default restore files or directories to where they came from. This is to protect users from accidentally overwriting things, but the second example shows how to use --output to specify where you want the file or directory to go.
Empty backed up directories are not restored. This is a known issue.
The option --restore downloads the most recent version of a file or directory. To restore a prior version, use --point-in-time instead.
Only one file or directory may be restored at a time. This causes users trying to restore lots of files using --restore and a script to lock themselves out of our servers with a "reconnecting too fast" error if the script make more than 150 connection attempts in an hour. For that reason, throttle any script that repeatedly calls --restore.
Although the application allows you to restore items that
Cross-platform restores (e.g. you uploaded the files while seated at a Windows box and are running --restore to get them while seated at a Linux box) are tricky due to differences between operating systems. There are path differences and how different shells interpret the paths of other OSs. Additionally there are differences with how each operating system handles case sensitivity. By all means give it a try, but if it does not work then specify a journal number instead of a path. Paths are problematic across platforms but journal numbers are not. You can see the journal numbers using --tree-changelog.