diff --git a/imapbackup38.py b/imapbackup38.py index 92ef6bf..c792529 100644 --- a/imapbackup38.py +++ b/imapbackup38.py @@ -398,8 +398,9 @@ def print_usage(): print (" -d DIR --mbox-dir=DIR Write mbox files to directory. (defaults to cwd)") print (" -a --append-to-mboxes Append new messages to mbox files. (default)") print (" -y --yes-overwrite-mboxes Overwite existing mbox files instead of appending.") - print (" -f FOLDERS --folders=FOLDERS Specify which folders to include. Overrides --exclude-folders. Comma separated list.") - print (" --exclude-folders=FOLDERS Specify which folders to exclude. Overridden by --folders. Comma separated list.") + print (" -f FOLDERS --folders=FOLDERS Specify which folders to include. Comma separated list.") + print (" --exclude-folders=FOLDERS Specify which folders to exclude. Comma separated list.") + print (" You cannot use both --folders and --exclude-folders.") print (" -e --ssl Use SSL. Port defaults to 993.") print (" -k KEY --key=KEY PEM private key file for SSL. Specify cert, too.") print (" -c CERT --cert=CERT PEM certificate chain for SSL. Specify key, too.") @@ -644,18 +645,19 @@ def main(): """Main entry point""" try: config = get_config() + if config.get('folders') and config.get('exclude-folders'): + print("ERROR: You cannot use both --folders and --exclude-folders at the same time") + sys.exit(2) server = connect_and_login(config) names = get_names(server,config['thunderbird'],config['nospinner']) exclude_folders = [] if config.get('folders'): - # Takes precedence over --exclude-folders dirs = list(map(lambda x: x.strip(), config.get('folders').split(','))) if config['thunderbird']: dirs = [i.replace("Inbox", "INBOX", 1) if i.startswith("Inbox") else i for i in dirs] names = list(filter(lambda x: x[0] in dirs, names)) elif config.get('exclude-folders'): - # Use --exclude-folders option only when --folders is not set exclude_folders = list(map(lambda x: x.strip(), config.get('exclude-folders').split(','))) basedir = config.get('basedir')