#!/bin/python3 import json import argparse # Create the parser parser = argparse.ArgumentParser(description="Sort a JSON file.") # Add the arguments parser.add_argument( "InputFile", metavar="inputfile", type=str, help="the input JSON file" ) parser.add_argument( "-o", metavar="outputfile", type=str, nargs="?", default="", help="the output JSON file (optional)", ) # Parse the arguments args = parser.parse_args() INPUT_FILE = args.InputFile OUTPUT_FILE = args.o if args.o else INPUT_FILE # Load the JSON data from the input file with open(INPUT_FILE, "r") as f: data = json.load(f) # Sort the JSON data sorted_data = json.dumps(data, sort_keys=True, indent=2) with open(OUTPUT_FILE, "w") as f: f.write(sorted_data) print(f"Sorted JSON data written to {OUTPUT_FILE}")