StringLänge einer Variable durch Variable kürzen
Hallo Batchler,
ich habe folgendes Problem:
eine Variable, nenne wir sie %code% soll durch eine andere, nennen wir sie %LenSet% in der Länge gekürzt werden.
Code hat etwa folgenden Inhalt:
" -s 720x432 -vf crop=720:432:0:72 -aspect 16:9 -c:a copy -map 0:0 -map 0:1 "
und soll nun durch LenSet um 19 gekürzt werden, so dass das heraus kommt:
" -s 720x432 -vf crop=720:432:0:72 -aspect 16:9 -c:a copy "
bringt leider nicht das gewünschte Ergebnis.
Dass der Inhalt von %code% und %LenSet% verschieden sind, erwähne ich nur der Vollständigkeit halber.
Danke im Voraus für die Mithilfe.
max5moritz
eine Variable, nenne wir sie %code% soll durch eine andere, nennen wir sie %LenSet% in der Länge gekürzt werden.
Code hat etwa folgenden Inhalt:
" -s 720x432 -vf crop=720:432:0:72 -aspect 16:9 -c:a copy -map 0:0 -map 0:1 "
und soll nun durch LenSet um 19 gekürzt werden, so dass das heraus kommt:
" -s 720x432 -vf crop=720:432:0:72 -aspect 16:9 -c:a copy "
set "newCode=%%code:~0,-%LenSet%%%"
bringt leider nicht das gewünschte Ergebnis.
Dass der Inhalt von %code% und %LenSet% verschieden sind, erwähne ich nur der Vollständigkeit halber.
Danke im Voraus für die Mithilfe.
max5moritz
Please also mark the comments that contributed to the solution of the article
Content-Key: 197605
Url: https://administrator.de/contentid/197605
Printed on: April 19, 2024 at 06:04 o'clock
2 Comments
Latest comment
Hallo max5moritz.
So sollte das funktionieren. Diese Art von verschachtelter Variable erfordert CALL, anderenfalls müsstest du mit verzögerter Variablenerweiterung arbeiten, á la
Grüße
rubberman
set "code=-s 720x432 -vf crop=720:432:0:72 -aspect 16:9 -c:a copy -map 0:0 -map 0:1 "
set /a LenSet=19
call set "newCode=%%code:~0,-%LenSet%%%"
echo %newCode%
So sollte das funktionieren. Diese Art von verschachtelter Variable erfordert CALL, anderenfalls müsstest du mit verzögerter Variablenerweiterung arbeiten, á la
set "newCode=!code:~0,-%LenSet%!"
Grüße
rubberman