| Datenträger nach Label finden und umgekehrt |
| Samstag, den 10. Oktober 2009 um 00:34 Uhr |
|
Wie Windows die Laufwerksbuchstaben verteilt kann einem mit diesem Script reichlich egal sein. Wie unschwer zu erkennen ist, ist dies eine "Funktion" die den Namen der Variablen bekommt, die hinterher den Laufwerksbuchstaben enthalten soll, und den Laufwerksstring. Das ganze ginge auch etwas kürzer, aber es werden hier auch Labels mit Leerzeichen wie "Lokaler Datenträger" erkannt. Umlaute werden einfach normal eingegeben/übergeben, und können trotz falscher Darstellung verglichen werden. REM PFLICHT: setlocal enabledelayedexpansion Umgekehrt, aus "c" mach "Lokaler Datenträger". echo off
setlocal enabledelayedexpansion
:: lese Laufwerksnamen auch mit Leerzeichen
set drvletter=c
set temp=
for /f "tokens=*" %%i in ('VOL %drvletter%:') do (
:: nur erste Zeile auslesen und schleife sauber verlassen
if "!temp!"=="" (
set temp=%%i
:: REM Datenträger in Laufwerk R: ist RamDisk
:: das heißt 31 Zeichen überspringen
set res=!temp:~31!
)
)
echo !drvletter! Name ist (Umlaute missachtend):
echo !res!
echo.
pause
endlocal
|