Archiv verlassen und diese Seite im Standarddesign anzeigen : (Sonstige) - Post Processing von Dateien
Hallo,
bei mir laden Dateien im folgenden Ordner: C:\Dateien.
Deutsche und Englische
Ich würde diese gerne automatisch auf meinen NAS verschieben.
Ordnerstruktur:
\\NAS\Files\Dateien\
\\NAS\Files\Englische Dateien\
Wie kann ich das machen ?
(In 95% der fälle kann man am Datei Namen erkennen ob die Datei in \\NAS\Files\Dateien\ oder in \\NAS\Files\Englische Dateien\ einsortiert werden muss)
Von der Sektion her würde ich denken, dass du das selbst Programmieren möchtest?
Mir fallen zwei Ansätze ein, die man nutzen könnte:
Verwendung von Wörterbüchern: Die Sprache, die mehr Wörter aus dem Titel im Wörterbuch hat gewinnt. Je nach Dateityp kann man hier eventuell auch versuchen zwischen "Titel" und "Untertitel" zu unterscheiden. Hin und wieder ist der "Titel" ja Englisch/International und nur der "Untertitel" angepasst.
Verwendung von Datenbanken/Schnitstellen mit bekannten Titel (hier müsste man vorher wissen was das für Dateien sind. Filme/Spiele/Software und prüfen, ob man Datenbanken/Schnitstellen hierfür findet). So kann man in Erfahrung bringen, welcher Sprache dieser Titel zugeordnet ist.
Naja wenn es schon etwas existierendes gibt was genau das macht, dann bin ich für Hinweise gerne offen.
FileBot (https://www.filebot.net/)
In einem ersten Schritt würde ich alles verschieben lassen was im Ordnernanen german hat.
Danach vielleicht auch die Dateien durchsuchen ob eine sprachspur Datei mit.de. Deutsch oder german Vorhanden ist.
Das weitere Vorgehen hängt von den Vorgaben ab. Beispielsweise könnte man anhand bestimmter Group Endungen weitere deutsche Filme rausfiltern.
Edit
Nimbus hat aber sicher auch recht, nach Wörtern wie der die das und ähnlichen zu suchen ist wohl auch nicht verkehrt, wichtig ist das davor und danach ein leerzeichen steht. Damit wären sicher einige weitere Filme aussortiert.
- - - - - - - - - - Beitrag nachträglich erweitert - - - - - - - - - -
Und bevor sich jemand Danke Klicks sichern will indem er mich verbessert, es heißt natürlich Tonspur, nicht Sprachspur. Und Rechtschreibfehler kommen vom Handy, sorry dafür
- - - - - - - - - - Beitrag nachträglich erweitert - - - - - - - - - -
Oh je man sollte nicht seinem Job nachgehen und gleichzeitig über Problemr anderer nachdenken.
Natürlich liegt die Tonspur nicht als Datei vor, aber wenn das sowieso automatisch in einem Script abläuft, ist es nur eine weitere Zeile das über Mediainfo laufen zu lassen.
Und falls im Datei/Ordnernamen die Sprache nicht erwähnt wird, sicher die einzige Möglichkeit die Sprache von Rambo, Creed oder ähnliches Titeln raus zu bekommen.
In einem ersten Schritt würde ich alles verschieben lassen was im Ordnernanen german hat.
Danach vielleicht auch die Dateien durchsuchen ob eine sprachspur Datei mit.de. Deutsch oder german Vorhanden ist.
Das weitere Vorgehen hängt von den Vorgaben ab. Beispielsweise könnte man anhand bestimmter Group Endungen weitere deutsche Filme rausfiltern.
Edit
Nimbus hat aber sicher auch recht, nach Wörtern wie der die das und ähnlichen zu suchen ist wohl auch nicht verkehrt, wichtig ist das davor und danach ein leerzeichen steht. Damit wären sicher einige weitere Filme aussortiert.
- - - - - - - - - - Beitrag nachträglich erweitert - - - - - - - - - -
Und bevor sich jemand Danke Klicks sichern will indem er mich verbessert, es heißt natürlich Tonspur, nicht Sprachspur. Und Rechtschreibfehler kommen vom Handy, sorry dafür
- - - - - - - - - - Beitrag nachträglich erweitert - - - - - - - - - -
Oh je man sollte nicht seinem Job nachgehen und gleichzeitig über Problemr anderer nachdenken.
Natürlich liegt die Tonspur nicht als Datei vor, aber wenn das sowieso automatisch in einem Script abläuft, ist es nur eine weitere Zeile das über Mediainfo laufen zu lassen.
Und falls im Datei/Ordnernamen die Sprache nicht erwähnt wird, sicher die einzige Möglichkeit die Sprache von Rambo, Creed oder ähnliches Titeln raus zu bekommen.
Ein einfaches Script müsste es ja sein wenn man das über MediaInfo laufen lassen kann.
Leider weiß ich persönlich nicht wie, also bräuchte ich externe Hilfe.
Was meinst du wäre realistisch als Preis für so ein script/tool das das ganze automatisch abwickeln kann ?
Sobald ich das weiß mach ich ein Post in der Marktplatz Section auf.
Gruß
Cyberhotte
01.11.2019, 23:39
naja, das du nur deutsch und englisch trennen willst, ginge das sicher mit einem kleinen Script (batch), da kannste nach googlen, habe da direkt ein paar Ansätze gefunden.
Hier hast du ein Tool, das es macht, das kannst dann anpassen nach deinen Wünschen. https://www.pcwelt.de/downloads/DropIt-Ordnung-3411936.html
Was man dafür verlangen kann, habe ich keine Ahnung. Wichtig ist nur eine exaktere Angabe der Gegebenheiten.
Da es von Windows zum NAS geschoben werden soll, brauchst du wohl ein Powershell Script, damit kenne ich mich nicht aus.
Das reine Suchen und Verschieben von Sachen die
German im Namen haben, sollte unter Linux mittels eines find Befehls wohl mit einer einzigen Zelle geschafft werden. Der Rest müsste der Reihe nach in einer Schleife eingelesen und bearbeitet werden.
Eine Zeile für den Mediainfo Aufruf, eine für das auswerten und das verschieben.
Zumindest in der Theorie. Als Amateur würde ich selber wohl viel, viel mehr Zeilen fabrizieren. LoL
Sind die Filme jeweils in einem eigenen Ordner, bräuchte ich schon wieder zwei oder drei Zeilen mehr Aber jemand der gut Scripten kann, (also nicht ich) braucht dazu keine 5 Minuten.
Und natürlich auch immer vorausgesetzt, Mediainfo erkennt die Sprache. Laut deren Homepage ist das zumindest in Matroska Containern der Fall.
Eine Alternative zu einem Powershellscript wäre noch, Linux als Subsystem für Windows zu installieren, dann könnte das auch als Shellscript laufen. Muss dann allerdings, vor allem von den Pfadangaben her, etwas anders als ein normales Shellscript geschrieben werden. Laufwerk C würde beispielsweise dann mit /mnt/c/..... angesprochen werden
Editb
Ach, eines noch. Auch wenn es für deiner Situation nicht geholfen hat, jeder der hier gepostet hat, hat zumindest versucht zu helfen. Nächstes Mal machen sie das vielleicht nicht mehr. Ich habe mich also mal für dich bei ihnen bedankt
Zudem, bitte keine Vollzitate, die sind nirgends gern gesehen weil sie den Thread unübersichtlich machen. Hier im Board sind sie laut Regeln sogar verboten.
Danke für all die Vorschläge, als erstes werde ich mir das tool das Cyberhotte empfohlen hat anschauen. Wenn das tool einwandfrei funktioniert, dann müsste ich nur noch ein script haben das über MediaInfo die Sprache erkennt.
War leider nur sehr sporadisch aktiv die letzten 48 Std. Habe das bedanken jetzt nachgeholt, ich bin für jede Hilfe wirklich dankbar!
Gruß,
logas
Habe jetzt gerade gesehen das im PC-Magazin 12/19 genau das steht was ich geschrieben hatte. Finde ich echt einen Wahnsinnszufall.
Du kannst dort nachlesen wie man das Subsystem für Windows und eine Linuxapp installiert. Und zusätzlich wird ein klein wenig auf den find Befehl eingegangen. Auch wie man damit nach dem finden verschiebt.
Wie geschrieben, dort ist fast zu 100% genau das erklärt, was ich als Abschlusstipp geschrieben hatte
Hallo leute,
Ich habe nun ein fast optimales Script. Nur stehe ich vor einem Problem. Aktuell sortiert es nur die Media Dateien in meinem Hauptordner, ich dachte durch das /s in der for Schleife würde er durch alle subfolder loopen und auch die Dateien sortieren, aber irgendwie passiert das nicht. Wo liegt der Fehler?
Code hier: https://pastebin.com/raw/ehSZ1FUi
Bin für jeden Tipp dankbar.
Duriprniwoisbrma
17.11.2019, 18:40
Wenn ich es richtig sehe, liegt der Fehler bei deiner Variable A.
Weil der Befehl `dir /b /s "%inputpath%\*.%extensiontype%"` liefert (zumindest bei mir) einen kompletten Pfad z.B. C:\DLs\file.mkv. Beim move Befehl würdest du also C:\DLs\file.mkv nach %outputpath%\%%C\%%D\%%G\C:\DLs\file.mkv verschieben.
Wäre es nicht einfacher, in einem ersten Schritt alles zu verschieben, was ".german." im Namen hat? Zumindest die Scene Releases haben das alle zuverlässig drin. Den Rest nach audio id=en checken und den Rest ggf. von Hand sortieren, wird vermutlich nicht viel übrig sein.
Des Weiteren ist mir aufgefallen, dass du nur alles vor dem 1. Punkt als Serienname nimmst. Glaube die wenigsten Serien heißen nach dem Schema Serie.S01E01 sondern eher The.Great.Serie.S01E01 ...?
Dann wäre es vlt einfacher und sicherer nach ".S##E##." zu regexen (# soll hier Zahl von 0-9 darstellen weiß regex grad nicht auswendig) und alles davor -> Serientitel, alles danach -> Episodentitel,whatever.
Batch kann glaube kein regex, daher vlt die Überlegung ne richtige Sprache zu verwenden...
Batch kann glaube kein regex, daher vlt die Überlegung ne richtige Sprache zu verwenden...
Welche Sprache würdest du empfehlen ? Leider kann ich keine andere Sprache :(
In deinem Fall wohl am besten:
Vvv.script-example.com/wie-erstelle-ich-ein-PowerShell-Skript
Netflixlover
19.11.2019, 20:19
Mit Powershell geht das :D hab sowas ähnliches mit -exclude
Powered by vBulletin® Version 4.2.2 Copyright ©2026 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.