Suche bzw. automatische löschung von Videos
Hallo,
ich hoffe dass mir jemand hier helfen kann.
Ich möchte Videos (.mp4) anhand von der Länge (diese ist im Windows Explorer unter dem Attribut "Länge" sichtbar) automatisiert suchen bzw. wenn möglich auch löschen.
Unter der Windows Suche ist es möglich "Länge:X" einzugeben, die kleinste Einheit ist hier aber nur unter 1. Minute, ich würde aber gerne die Videos im Sekundenbereich suchen bzw. löschen.
Gibt es ein Tool um Videos mit einer bestimmten Länge zu finden/löschen?
Am besten wäre hier ein Batch File =)
Konkret soll automatisiert alle 2 Stunden Videos mit einer bestimmten Länge gelöscht werden.
Wenn das ganze noch in Unterordner suchen kann wäre es optimal.
lG Stefan
ich hoffe dass mir jemand hier helfen kann.
Ich möchte Videos (.mp4) anhand von der Länge (diese ist im Windows Explorer unter dem Attribut "Länge" sichtbar) automatisiert suchen bzw. wenn möglich auch löschen.
Unter der Windows Suche ist es möglich "Länge:X" einzugeben, die kleinste Einheit ist hier aber nur unter 1. Minute, ich würde aber gerne die Videos im Sekundenbereich suchen bzw. löschen.
Gibt es ein Tool um Videos mit einer bestimmten Länge zu finden/löschen?
Am besten wäre hier ein Batch File =)
Konkret soll automatisiert alle 2 Stunden Videos mit einer bestimmten Länge gelöscht werden.
Wenn das ganze noch in Unterordner suchen kann wäre es optimal.
lG Stefan
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 331353
Url: https://administrator.de/forum/suche-bzw-automatische-loeschung-von-videos-331353.html
Ausgedruckt am: 28.05.2025 um 00:05 Uhr
3 Kommentare
Neuester Kommentar
Hallo Stefan
Konzept:
Das Script listet im Moment nur mit Länge in Sekunden auf. Da brauchst du nur noch einen IF Vergleich für das Löschen zu implementieren ...
Grüße
rubberman
Am besten wäre hier ein Batch File =)
Naja, pur eher nicht. Zumindest ein Hybridscript.Konzept:
@if (@a)==(@b) @end /* Batch Part:
@echo off &setlocal
for /r %%i in (*.mp4) do (
for /f %%j in ('cscript //nologo //e:jscript "%~fs0" "%%~i"') do echo %%j s, %%i
)
pause
exit /b
JScript Part: */
if (WScript.Arguments.Count() == 0) {WScript.Quit();}
var objFSO = WScript.CreateObject('Scripting.FileSystemObject');
var FileFullName = objFSO.GetAbsolutePathName(WScript.Arguments(0));
var objADOS = WScript.CreateObject('ADODB.Stream');
objADOS.Type=2;
objADOS.Charset = 'UTF-16';
objADOS.Open();
objADOS.WriteText(WScript.CreateObject('Shell.Application').NameSpace(objFSO.GetParentFolderName(FileFullName)).ParseName(objFSO.GetFileName(FileFullName)).ExtendedProperty('Duration'));
objADOS.Position=0;
WScript.Echo(Math.round(objADOS.ReadText()/10000000));
automatisiert alle 2 Stunden
Das machst du mit der Aufgabenplanung.Grüße
rubberman
Nichtwissende
... könnten zumindest Google anwerfen und lernen.Wie auch immer, IF vergleicht, LSS steht für "kleiner als", DEL löscht eine Datei. Hättest du in 5 Minuten gewusst.
Einzige wirkliche Herausforderung wäre gewesen, dass bei einem geplanten Task das Arbeitsverzeichnis nicht gleich dem Verzeichnis deiner Batchdatei sein könnte. Da brauchst du noch die Anpassung per CD /D im Batchcode und CurrentDirectory Eigenschaft im JScript.
@if (@a)==(@b) @end /* Batch Part:
@echo off &setlocal
cd /d "%~dp0"
for /r %%i in (*.mp4) do (
for /f %%j in ('cscript //nologo //e:jscript "%~fs0" "%%~i"') do if %%j lss 20 del "%%~i"
)
pause
exit /b
JScript Part: */
var objFSO = WScript.CreateObject('Scripting.FileSystemObject');
var objWShell = WScript.CreateObject('WScript.Shell');
objWShell.CurrentDirectory = objFSO.GetParentFolderName(WScript.ScriptFullName);
var FileFullName = objFSO.GetAbsolutePathName(WScript.Arguments(0));
var objADOS = WScript.CreateObject('ADODB.Stream');
objADOS.Type=2;
objADOS.Charset = 'UTF-16';
objADOS.Open();
objADOS.WriteText(WScript.CreateObject('Shell.Application').NameSpace(objFSO.GetParentFolderName(FileFullName)).ParseName(objFSO.GetFileName(FileFullName)).ExtendedProperty('Duration'));
objADOS.Position=0;
WScript.Echo(Math.round(objADOS.ReadText()/10000000));
Grüße
rubberman