Source code for GLXShell.plugins.builtins.basename
# inspired by: https://pubs.opengroup.org/onlinepubs/9699919799/utilities/dirname.html
import sys
import cmd2
from GLXShell.libs.core import basename
from argparse import RawDescriptionHelpFormatter
[docs]class GLXBaseName(cmd2.CommandSet):
parser_basename = cmd2.Cmd2ArgumentParser(
prog="basename",
description="return non-directory portion of a pathname",
add_help=True,
formatter_class=RawDescriptionHelpFormatter
)
parser_basename.add_argument(
"string",
help="a string",
)
parser_basename.add_argument(
"suffix",
nargs="?",
default=None,
help="a string",
)
def __init__(self):
super().__init__()
[docs] @cmd2.with_argparser(parser_basename)
@cmd2.with_category("Builtins")
def do_basename(self, args):
sys.stdout.write("%s\n" % basename(args.string, args.suffix)) # pragma: no cover
[docs] def help_basename(self):
self.parser_basename.print_help()