#!/usr/bin/env python3 # -*- coding: utf-8 -*- import os import sys import subprocess from tqdm import tqdm def main(): import argparse parser = argparse.ArgumentParser( description="Importiert alle .txt-Dateien in einer Kategorie mittels import_single_file.py" ) parser.add_argument( "category", help="Name der Kategorie (Ordner unter ~/knowledge/)" ) parser.add_argument( "--topic", "-t", help="Optionaler Kontext/Topic für alle Importe", default="default" ) parser.add_argument( "--script-path", "-s", help="Pfad zum import_single_file.py", default="import_single_file.py" ) args = parser.parse_args() category = args.category topic = args.topic script_path = args.script_path base_dir = os.path.expanduser(f"~/knowledge/{category}") if not os.path.isdir(base_dir): print(f"❌ Kategorie-Ordner nicht gefunden: {base_dir}") sys.exit(1) files = [f for f in os.listdir(base_dir) if f.endswith(".txt")] if not files: print(f"⚠️ Keine .txt-Dateien in {base_dir} gefunden.") sys.exit(0) print(f"📁 Starte Ordner-Import: {len(files)} Dateien in Kategorie '{category}' (Topic: '{topic}')") for filename in tqdm(files, desc="Importiere Dateien"): cmd = [ sys.executable, script_path, category, filename, topic ] try: subprocess.run(cmd, check=True) except subprocess.CalledProcessError as e: print(f"❌ Fehler beim Import von {filename}: {e}") print("✅ Ordner-Import abgeschlossen.") if __name__ == "__main__": main()