Elegantere Lösung:
Anstatt die Zeichen von links an zu belassen und den Rest wegzuschneiden einfach direkt von links an wegschneiden.
%test:~0,4%
Das gibt an, dass die ersten 4 Zeichen extrahiert werden sollen.
%test:~0,-1%
Das wiederum gibt an, dass das letzte Zeichen abgeschnitten werden soll.
Du kannst nach dieser Methode noch weiter googlen. Damit lassen sich Variablen recht gut beschneiden.
Hier nochmal direkt der Code zum Austesten der Funktion:
@echo off
cls
set test=Hallo
set test=%test:~0,-1%
echo %test%
pause>nul
exit