def get_video_files(directory): video_files = [] for root, _, files in os.walk(directory): for file in files: if Path(file).suffix.lower() in VIDEO_EXTENSIONS: full_path = os.path.join(root, file) size = os.path.getsize(full_path) video_files.append((full_path, size)) return sorted(video_files, key=lambda x: x[1], reverse=True)
def main(): parser = argparse.ArgumentParser(description="myHD feature: Show largest video files") parser.add_argument("directory", help="Directory to scan") parser.add_argument("-n", "--top", type=int, default=10, help="Number of top files to show") args = parser.parse_args() myhd code
files = get_video_files(args.directory) for path, size in files[:args.top]: print(f"{size // (1024**2):>6} MB {path}") if == " main ": main() size)) return sorted(video_files
For now, here’s a for a myhd CLI tool that analyzes disk usage of video files: key=lambda x: x[1]