This is the command larch that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator
larch - copy messages from one IMAP server to another
larch [--from URI] [--to URI]
Larch is a tool to copy messages from one IMAP server to another quickly and safely. It's
smart enough not to copy messages that already exist on the destination and robust enough
to deal with interruptions caused by flaky connections or misbehaving servers.
Larch is particularly well-suited for copying email to, from, or between Gmail accounts.
--from, -f URI
URI of the source IMAP server.
--from-folder, -F FOLDER
Source folder to copy from. Default is INBOX.
--from-pass, -p PASSWD
Source server password. Default is to prompt the user.
--from-user, -u USER
Source server username. Default is to prompt the user.
--to, -t URI
URI of the destination IMAP server.
--to-folder, -T FOLDER
Destination folder to copy to. Default is INBOX.
--to-pass, -P PASSWD
Destination server password. Default is to prompt the user.
--to-user, -U USER
Destination server username. Default is to prompt the user.
Copy all folders recursively.
Copy all subscribed folders recursively.
Delete messages from the source after copying them, or if they already exist at the
--exclude PATTERN [ PATTERN... ]
List of mailbox names/patterns that shouldn't be copied.
Filename containing mailbox names/patterns that shouldn't be copied.
Expunge deleted messages from the source.
Sync message flags from the source to the destination for messages that already
exist at the destination.
--config, -c FILE
Specify a non-default config file to use. Default is ~/.larch/config.yaml.
Specify a non-default message database to use. Default is ~/.larch/larch.db.
Don't actually make any changes.
Maximum number of times to retry after a recoverable error. Default is 3.
Don't create destination folders that don't already exist.
Path to a trusted certificate bundle to use to verify server SSL certificates.
Verify server SSL certificates.
--verbosity, -V STR
Output verbosity: debug, info, warn, error, or fatal. Default is info.
Print version and exit.
Show a help message.
While it's possible to control Larch entirely from the command line, this can be
inconvenient if you need to specify a lot of options or if you run Larch frequently and
can't always remember which options to use. Using a configuration file can simplify
By default, Larch looks for a config file at ~/.larch/config.yaml and uses it if found.
You may specify a custom config file using the --config command line option.
The Larch configuration file is a simple YAML ⟨http://yaml.org/⟩ file that may contain
multiple sections, each with a different set of options, as well as a special default
section. The options in the default section will be used unless they're overridden either
in another config section or on the command line.
Here's a sample Larch config file:
# Copy all subscribed folders by default
# Copy mail from Gmail to my server, excluding stuff I don't want.
gmail to my server:
- "[Gmail]/Sent Mail"
# Copy mail from my INBOX to Gmail's INBOX
my inbox to gmail inbox:
This file contains three sections. The options from default will be used in all other
sections as well unless they're overridden.
To specify which config section you want Larch to use, just pass its name on the command
line (use quotes if the name contains spaces):
larch 'gmail to my server'
If you specify additional command line options, they'll override options in the config
larch 'gmail to my server' --from-user anotheruser
Running Larch with no command line arguments will cause the default section to be used.
With the example above, this will result in an error since the default section doesn't
contain the required from and to options, but if you only need to use Larch with a single
configuration, you could use the default section for everything and save yourself some
typing on the command line.
Use larch online using onworks.net services