The command line options
--batchmode are similar but are intended for different use cases.
--headless launches SpiderOak ONE, Groups, or Enterprise and performs all available work. It scans the filesystem, builds and uploads everything in the queue, and downloads and replays transactions from other devices. Then it remains running in the background, vigilant for more work to do. This is a good option when you want continual operation.
--batchmode is like headless, but it will exit when all available work is done. This is a good option for scheduled use. You can add this to a cron job, or just run it yourself periodically as desired.