Teilen Sie mehrere MKV-Dateien vom Ubuntu-Terminal mit MKVMerge auf

Teilen Sie mehrere MKV-Dateien vom Ubuntu-Terminal mit MKVMerge auf

Ich habe viele .mkv-Dateien

nightmare1.mkv
nightmare2.mkv
nightmare3.mkv
...

Ich verwende mkvmerge vom Terminal von Ubuntu aus, umeinzelDatei mit diesem Befehl

mkvmerge --split 1G --compression 0:none --compression 1:none --clusters-in-meta-seek -o "nightmare1.mkv" "nightmare1.mkv"

Der erste Albtraum ist Ausgabe, der zweite ist Eingabe

Ich bekomme diese Dateien

nightmare1-001.mkv
nightmare1-002.mkv
...

Ich versuche zu verstehen, wie ich teilen kannalle.mkv-Dateien in 1-GB-Stücke, weil ich bekommen will

nightmare1-001.mkv
nightmare1-002.mkv
 ...

nightmare2-001.mkv
nightmare2-002.mkv
 ...

nightmare3-001.mkv
nightmare3-002.mkv
 ...

Alle Albtraumfilme befinden sich im selben Ordner.
Wie soll ich den Befehl umschreiben? Das Problem ist, dass ich die einzelne MKV-Datei als Eingabe habe und als Ausgabe in eine Datei schreibe, aber ich möchte den Ordnerpfad als Eingabe festlegen, in dem sich die MKV-Dateien befinden, und alle neuen aufgeteilten MKV-Dateien in den Ordner schreiben.

Antwort1

Sie können eine Bash- forSchleife verwenden, um diese Aufgabe zu lösen:

for file in ./source/*mkv; \
do \
    echo mkvmerge --split 1G --compression 0:none --compression 1:none \
    --clusters-in-meta-seek -o "./split/$(basename "$file")" "$file"; \
done
  • Kopieren Sie alle Zeilen, fügen Sie sie im Terminal ein und führen Sie sie als einzelnen Befehl aus.
  • Wenn Sie mit der Ausgabe des Probelaufs der Schleife zufrieden sind,Entfernen Sie den echoBefehlum die eigentlichen Operationen durchzuführen.

Im obigen Beispiel ./source/handelt es sich um einen relativen Pfad zum Verzeichnis, in dem die Originaldateien gespeichert sind. Dies ./split/ist der Zielpfad und muss vorab erstellt werden.

$fileBei jeder Iteration sieht der Wert der Variablen wie folgt aus ./source/nightmare-i.mkv. Die Befehlsersetzung $(basename "$file")gibt nur den Dateinamen ohne Pfad zurück, d. h. nightmare-i.mkv, daher sieht der Wert der Ausgabeoption wie folgt aus ./split/nightmare-i.mkv.

verwandte Informationen