import argparse import sys from modules.refit_logger import logger from modules.refit_create import Refit_Create # Setting Global Variables REFIT_VERSION = "Refit Beta 0.1.0" # ---------------------------ARGPARSE START--------------------------- # Main Parser parser = argparse.ArgumentParser( prog="Refit", description="This is a file and directory manipulation tool.\ it can create, move and delete files and directories as well as \ renaming them", epilog=REFIT_VERSION, ) # Main Parser Arguments # Create Parser subparser = parser.add_subparsers( title="Commands", dest="create", required=False, ) # Create Parser Arguments create_parser = subparser.add_parser("create", help="creates a new file/folder") create_parser.add_argument("-n", type=int, help="number of items") create_parser.add_argument("-i", "--input", help="input file") create_parser.add_argument( "--name", nargs="*", help="the name of the folder you want to create\n Default: directory", ) create_parser.set_defaults(command_class=Refit_Create) args = parser.parse_args() # ---------------------------ARGPARSE END----------------------------- # Dispatcher # determines what code gets addressed based of the users choosen flags. if hasattr(args, "command_class"): logger.debug("In hasattr()") Refit_Create = args.command_class create_command_instance = Refit_Create(args) create_command_instance() else: parser.print_help() logger.info("No input, exiting with error:1") sys.exit(1)