Servus, mit dem folgenden Windows Skript will man die letzte Buchstabe von Ordnernamen entfernen. Problem: mehrere Buchstaben werden entfernt stattdessen. Woran liegt das?
1 | @echo off |
2 | setlocal disabledelayedexpansion |
3 | |
4 | for /d %%f in (*) do ( |
5 | set "foldername=%%f" |
6 | set "basename=%%~nf" |
7 | call :ProcessFile |
8 | ) |
9 | echo Done! |
10 | pause |
11 | exit /b |
12 | |
13 | :ProcessFile |
14 | set "newname=%basename:~0,-1%" |
15 | ren "%foldername%" "%newname%" |
16 | exit /b |