Massenentfernung von MKV-Metadaten – Batch-Skript

Massenentfernung von MKV-Metadaten – Batch-Skript

Ich versuche, eine Batchdatei zu erstellen, die mkvpropeditalle Tags aus allen MKV-Dateien in einem Verzeichnis verwendet und entfernt. Bisher ist mir Folgendes gelungen:

@ECHO OFF
TITLE MKV Metadata Remover
ECHO.
ECHO This program executes MKVPropedit to remove all metadata from all mkv 
files in the current directory.
ECHO.

:choice
set /P c=Are you sure you want to continue[Y/N]?
if /I "%c%" EQU "Y" goto :somewhere
if /I "%c%" EQU "N" goto :somewhere_else
goto :choice


:somewhere

FOR /F "tokens=*" %G IN ('dir /b *.mkv') DO mkvpropedit "%G" --tags all: -d 
title --delete-attachment "1" 
pause 
exit

:somewhere_else

ECHO Closing program...
pause
exit

Wenn Sie diese Option verwenden, wird das Fenster jedoch Yeinfach geschlossen – selbst wenn das Verzeichnis voller .mkvDateien ist.

Ich wäre für jede Hilfe sehr dankbar. Danke fürs Lesen.

Antwort1

Versuchen Sie es folgendermaßen:

FOR %%G IN (*.mkv) DO mkvpropedit "%%G" --tags all: -d title --delete-attachment 1

Hinweis: Für Variablen in Batchdateien sind doppelte % erforderlich (siehe:https://stackoverflow.com/questions/14509652/was-ist-der-unterschied-zwischen-und-in-einer-cmd-datei)

Antwort2

Ich habe dies von der Windows-Befehlszeile mit WSL bash verwendet: Windows/WSL/bash/

find . -name "*.mkv" -exec bash -c 'for f; do mkvpropedit --tags all: "${f%.*}.mkv" ; done' -- {} +

Der erste Teil bis -exec liest und speichert eine Liste von MP4-Dateien. Mit -exec bash -c wird eine Bash-Befehlszeile ausgeführt. Vom "for f" bis zum nächsten Semikolon folgt eine for-Schleife, die mkvpropedit aufruft, um alle Tags in der MKV-Datei in der aktuellen Iteration der Schleife zu löschen. "done" beendet die Schleife. Das -- signalisiert das Ende der Optionen. "Innerhalb des inneren Befehls stellen die {} die Parametererweiterung dar. In philippinischem Englisch bedeutet dies "füge den gefundenen Dateinamen hier ein". "

Beachten Sie, dass mkvtoolnix installiert sein muss: „apt install mkvtoolnix““.

Beachten Sie, dass dies auch in den Unterverzeichnissen funktioniert.

verwandte Informationen