#!/usr/bin/python import argparse import os parser = argparse.ArgumentParser() parser.add_argument('searchterm', default='', nargs='?') parser.add_argument('--sort', action='store_true', default=False, help='Print PATH in a sorted form') args = parser.parse_args() path = os.getenv('PATH').split(';') if args.sort: path = sorted(path) if args.searchterm: needle = args.searchterm.lower() print(f"\nSearching PATH for {needle}") matches = [] for p in path: if needle in p.lower(): matches.append(p) if matches: print(f"Found {len(matches)} result{'' if len(matches) == 1 else 's'}") for m in matches: print(m) else: print(f"Unable to find {needle} in PATH") else: print("\nShowing PATH:\n") for p in path: print(p)