Files
python/refit/src/refit.py

58 lines
1.5 KiB
Python

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.0.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)