von Agrivaine » 13 Mai 2013, 10:11
Ich habe mir etwas "gebastelt", damit Filmtitel in zwei strukturierten Text-Dateien landen, was soweit auch prima funktioniert.
Allerdings habe ich ein Problem bei Titeln mit Umlauten. Ich würde es gerne direkt per DOS lösen und nur ungern einen kleinen Mehrzeiler dafür programmieren.
Als Beispiel:
Im SwitchPlugin als Parameter
"{title}" {leadingZero(start_month, "2")} {start_year}
als "Programm" meine Batch-Datei:
Code: Alles auswählen
@echo off & setlocal
rem legt Monats- und Komplett-Filmliste an
rem per Switch-Plugin aus TVB heraus mit Parametern: "{title}" {leadingZero(start_month, "2")} {start_year}
rem 'title' in Anführungszeichen, sonst werden Titel aus mehreren Wörtern durch die Spaces als einzelne Befehle interpretiert
:: %1 = Sendungstitel
:: %2 = Monat (2-stellig)
:: %3 = Jahr (4-stellig)
::ist nötig, da bspw. die Echo-Syntax mit %1 nicht funktioniert
set titel=%1
set monat=%2
set jahr=%3
:: check ob Jahresverzeichnis vorhanden
if not exist "C:\Program Files (x86)\M2TV\Daten\Filme %jahr%" md "C:\Program Files (x86)\M2TV\Daten\Filme %jahr%"
:: check ob neuer Monat + ggf. Monatstrenner anlegen
if not exist "C:\Program Files (x86)\M2TV\Daten\Filme %jahr%\FILM%jahr:~-2%%monat%.TXT" echo %monat%-%jahr%========================================================================= >> "C:\Program Files (x86)\M2TV\Daten\FILMALL.TXT"
echo %titel:~1,-1% >> "C:\Program Files (x86)\M2TV\Daten\FILMALL.TXT"
echo %titel:~1,-1% >> "C:\Program Files (x86)\M2TV\Daten\Filme %jahr%\FILM%jahr:~-2%%monat%.TXT"
endlocal
Dabei killt aber DOS die Umlaute im Titel und ersetzt sie durch (?) ANSI-Steuerzeichen. Kann ich das irgendwie umgehen bzw. verhindern, oder muss ich mir doch ein kleines Proggi zurecht hämmern
Ich habe mir etwas "gebastelt", damit Filmtitel in zwei strukturierten Text-Dateien landen, was soweit auch prima funktioniert.
Allerdings habe ich ein Problem bei Titeln mit Umlauten. Ich würde es gerne direkt per DOS lösen und nur ungern einen kleinen Mehrzeiler dafür programmieren.
Als Beispiel:
Im SwitchPlugin als Parameter [b]"{title}" {leadingZero(start_month, "2")} {start_year}[/b]
als "Programm" meine Batch-Datei:
[code]
@echo off & setlocal
rem legt Monats- und Komplett-Filmliste an
rem per Switch-Plugin aus TVB heraus mit Parametern: "{title}" {leadingZero(start_month, "2")} {start_year}
rem 'title' in Anführungszeichen, sonst werden Titel aus mehreren Wörtern durch die Spaces als einzelne Befehle interpretiert
:: %1 = Sendungstitel
:: %2 = Monat (2-stellig)
:: %3 = Jahr (4-stellig)
::ist nötig, da bspw. die Echo-Syntax mit %1 nicht funktioniert
set titel=%1
set monat=%2
set jahr=%3
:: check ob Jahresverzeichnis vorhanden
if not exist "C:\Program Files (x86)\M2TV\Daten\Filme %jahr%" md "C:\Program Files (x86)\M2TV\Daten\Filme %jahr%"
:: check ob neuer Monat + ggf. Monatstrenner anlegen
if not exist "C:\Program Files (x86)\M2TV\Daten\Filme %jahr%\FILM%jahr:~-2%%monat%.TXT" echo %monat%-%jahr%========================================================================= >> "C:\Program Files (x86)\M2TV\Daten\FILMALL.TXT"
echo %titel:~1,-1% >> "C:\Program Files (x86)\M2TV\Daten\FILMALL.TXT"
echo %titel:~1,-1% >> "C:\Program Files (x86)\M2TV\Daten\Filme %jahr%\FILM%jahr:~-2%%monat%.TXT"
endlocal
[/code]
Dabei killt aber DOS die Umlaute im Titel und ersetzt sie durch (?) ANSI-Steuerzeichen. Kann ich das irgendwie umgehen bzw. verhindern, oder muss ich mir doch ein kleines Proggi zurecht hämmern :wink: