Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Hallo,

ich habe mir eine Batchdatei gebastelt mit der ich mittels MKVMerge Videos ummuxen lasse. Die Dateien liegen alle schön nummeriert im gleiche Ordner wie die Batch. Jede Zeile in der Batch beinhaltet also einen um 1 höheren Wert als die vorherige Zeile, z. B. 01.mkv -> 02.mkv usw. Ist es irgendwie möglich, dass man diese Werte automatisch je Zeile um 1 erhöht? Ich würde über der Zeile z. B. per 'Set' einen Wert setzen der dann an einer bestimmten Stelle in den Zeilen eingefügt und je Zeile um 1 erhöht wird?

Gebe ich dort "0" ein steht in der 1. Zeile "01", in der 2. Zeile "02" usw. Trage ich dort 10 ein, steht in der 1. Zeile "11" und in der 2. Zeile "12". Geht das zu machen?

Yambi

  • Autor

Ich hab vielleicht nicht genau beschrieben was ich will: Die Inputdateien heißen immer gleich. Es handelt sich um Serienepisoden die umgerechnet werden. Jede Episode bzw. deren Streams hat eine Nummer. Das Output variiert aber, da auf Disk 1 z. B. Folgen 1 - 9 liegen wird auch als Output 00.mp4 bis 09.mp4 ausgegeben. Bei Disk 2 beginnt der Input wieder bei 00, der Ouput aber geht weiter bei z. B. 10.mp4 usw. Ich will jetzt die Outputnamen möglichst einfach erhöhen, z. B. indem ich oben in der Datei einen Wert "00" setze und dann bei Output 1 steht "00+1". Tragen ich oben "09" ein erhalte ich Output "09+1", also 10.

Den Rest könnte ich mit einer For-Schleife machen, damit habe ich aber keine Erfahrungen und wäre auch zu kompliziert. Der Input ist aber nicht das Problem.

  • Autor

aus dateinamen muss nichts rausgeholt werden. ich gebe den dateinamen an und er soll um einem wert erhöht werden. zeile 1 um 1, zeile 2 um 2 usw. den "basiswert" könnte man oben per 'set' setzen

Gesendet von meinem GT-I9100 mit Tapatalk

Innerhalb einer Bat-Datei sollte das eigentlich kein Problem sein.

Den entsprechenden Start-Wert könntest du auch als Variable an die .bat-Datei übergeben.

Mal als kleines Beispiel eine Bat-Datei, die eine Übergabe erwartet als Startwert und hochzählt.

@echo off

if defined %1 goto mit_startwert

goto ohne_startwert


:mit_startwert

set variable=%1

echo %variable%

set /a variable=%variable%+1

echo %variable%

goto ende


:ohne_startwert

set /a variable=0

echo %variable%

set /a variable+=1

echo %variable%

goto ende



:ende

echo "Ende"

pause

Könnte man natürlich auch in eine "goto-Schleife" mit if-Anweisung reinpacken, um weniger schreiben zu müssen eventuell.

Einen zweiten Übergabewert könnte man mit %2, einen dritten mit %3 abgreifen.

Bearbeitet von Crash2001

  • Autor

Ist nicht ganz das was ich suche, du denkst vermutlich etwas zu kompliziert. Ich hab mal etwas nach den set Kommando gesucht und es so halbwegs hinbekommen

set n=0

set /a n1=%n%+1

set /a n1=%n%+2

program input output%n1%

program input output%n2%

Jetzt wird Zeile 1 als output1, Zeile 2 als output2 usw. ausgegeben. Will ich, dass Zeile 1 output8 und Zeile 2 output9 ausgibt ändere ich einfach 'set n=0' in 'set n=7'. Problem ist aber noch, dass ich einstellige Zahlen nicht als 1 sondern als 01 ausgeben will. Mit n=00 geht das aber nicht. Ich könnte 'output%n1% durch output0%n1% ersetzen, dann bekomme ich aber Probleme wenn es über 10 geht, denn dann erhalte ich statt ouput10 ein output010.

Naja, bei den von dir gegebenen Infos ist es nicht gerade einfach nachzuvollziehen, wie das in der .bat-Datei dann aussieht...

Du könntest einfach überprüfen, ob der Ausgabewert < 10 ist und davon abhängig halt dann die führende Null ausgeben oder nicht.

Ob das nun mit Sprungmarke gemacht wird, oder ob du eine andere Variable ausgibst, in der du entweder die führende Null hinzufügst oder nicht, ist dann deiner Kreativität überlassen.

Genauso, ob du eine "Schleife" baust mit Sprungmarken, oder ob du es als "Spaghetticode" haben willst.

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.