def main():
    parser = make_parser()
    args = parser.parse_args()
    logger = Logger(args.verbose)
    storage = Storage(args.storage, logger)

    if args.command == 'list':
        for file in storage.query():
            print(file)
    elif args.command == 'compare':
        results_table = TableResults(
            args.columns, args.sort, first_or_value(args.histogram, False), NAME_FORMATTERS[args.name], logger
        )
        groups = load(storage, args.glob_or_file, args.group_by)

        results_table.display(TerminalReporter(), groups, progress_reporter=report_noprogress)
        if args.csv:
            results_csv = CSVResults(args.columns, args.sort, logger)
            output_file, = args.csv

            results_csv.render(output_file, groups)
    else:
        parser.error("Unknown command {0!r}".format(args.command))
dataset/ETHPy150Open ionelmc/pytest-benchmark/src/pytest_benchmark/cli.py/main/original