#!/usr/bin/python3 import os import re import sys def rename_file(filename): #if not os.path.exists(filename): if '.' in filename: name, extension = filename.rsplit('.', 1) else: name = filename.split('.')[0] extension = filename.split('.')[1] #name, extension = filename.rsplit('.', 1) if '.' in filename else (name = filename.split('.')[0]) # ohne Endung #print(temp+"."+filename.split('.')[1]) #os.rename(filename, temp+"."+filename.split('.')[1]) match1 = re.search(r'# (\d+)', name) match2 = re.search(r'#(\d+)', name) match3 = re.search(r'\((Folge) (\d+)\)', name) if match1: temp = re.sub(r'\(.*?\)', '', name) # Alles was mit Beginne ( bis einschliesslioch ) löschen # Extrahiere die Zahl und formatiere sie als 2-stellig (z. B. 05, 22) number = match1.group(1).zfill(2) # zfill(2) sorgt für zweistellige Zahlen # Entferne das `#` und die Zahl aus dem Dateinamen new_name = re.sub(r'# \d+', '', temp) new_name = f"{number}-{new_name}" # Entfernen der letzten Leerzeichen new_name = new_name.rstrip() # LÖschen der abschliesssenden Leerzeichen elif match2: temp = re.sub(r'\(.*?\)', '', name) # Alles was mit Beginne ( bis einschliesslioch ) löschen # Extrahiere die Zahl und formatiere sie als 2-stellig (z. B. 05, 22) number = match2.group(1).zfill(2) # zfill(2) sorgt für zweistellige Zahlen # Entferne das `#` und die Zahl aus dem Dateinamen new_name = re.sub(r'#(\d+)', '', temp) new_name = f"{number}-{new_name}" # Entfernen der letzten Leerzeichen new_name = new_name.rstrip() elif match3: number = match3.group(2).zfill(2) temp = re.sub(r'\(.*?\)', '', name) # Alles was mit Beginne ( bis einschliesslioch ) löschen new_name = f"{number}-{temp}" new_name = new_name.rstrip() else: print("Keine Nummer gefunden") if " " in new_name: new_name = new_name.replace(" ", "_") if "," in new_name: new_name = new_name.replace(",", "_") os.rename(filename, new_name+"."+extension) # Aufruf der Funktion (aktuelles Verzeichnis oder ein anderes) #rename_files(".") rename_file(sys.argv[1]) #rename_file("Hinreichendes Kriterium für lokale Extrema und Sattelpunkte für Funkt. m. zwei Variablen (Folge 189) (1080p_25fps_H264-128kbit_AAC).mp4")