BATCH: Freien Laufwerksbuchstaben finden

Problem:
Ich wollte per Bacth-Skript den nächsten freien Laufwerksbuchstaben ermitteln.

Lösung:
In den c't FAQs habe ich einen interessanten Artikel und ein Batch-Skript gefunden, dass genau diese Aufgabe löst:

@echo off %debug%
if not "%OS%"=="Windows_NT" exit /b
setlocalset ll=V T R Q P O N M K J I W X Y Z L U S H G F E D
for %%l in (%ll%) do (
 set LW=%%l
 mountvol %%l: /L >nul
 if errorlevel 1 (
 subst | findstr /B "%%l:" > nul
 if errorlevel 1 (
 net use %%l: >nul 2>&1
 if errorlevel 1 goto gotone
 )
 )
)
echo Kein Laufwerksbuchstabe frei
exit /b
:gotoneecho %LW% ist ein freier Laufwerksbuchstabe


Der Laufwerksbuchstabe steht dann in der Variable %LW% zur weiteren Verarbeitung zur Verfügung.

Quelle: c't Hotline & FAQ: Freien Laufwerksbuchstaben finden
Kategorien: Batch
Tags für diesen Artikel:
“Das einzig sichere System müsste ausgeschaltet, in einem versiegelten und von Stahlbeton ummantelten Raum und von bewaffneten Schutztruppen umstellt sein.”
Gene Spafford (Sicherheitsexperte)