Volume Label in einer Batch benutzen anstatt des LW Buchstaben
Hi
ich würde gern in einer Batchdatei eine Festplatte die über USB angeschlossen ist ,ansprechen. Da Windows aber die Eigenart hat ab und zu den zugewiesenen LW Buchstaben neu zu vergeben würde die Festplatte nicht mehr gefunden werden. Ist es irgendwie möglich das Volumen Label anzusprechen oder die cpid aus der registry zu nutzen oder den Device Name oder noch was anderes
Danke.
MfG
ich würde gern in einer Batchdatei eine Festplatte die über USB angeschlossen ist ,ansprechen. Da Windows aber die Eigenart hat ab und zu den zugewiesenen LW Buchstaben neu zu vergeben würde die Festplatte nicht mehr gefunden werden. Ist es irgendwie möglich das Volumen Label anzusprechen oder die cpid aus der registry zu nutzen oder den Device Name oder noch was anderes
Danke.
MfG
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 116503
Url: https://administrator.de/contentid/116503
Ausgedruckt am: 25.11.2024 um 20:11 Uhr
4 Kommentare
Neuester Kommentar
Hallo alschi,
ein vbscript ist IMO hier eleganter als eine Batch bei der du natürlich per Vol Lw: auch die Ausgabe auswerten könntest.
Gruß
LotPings
Das Script ließe sich auch in eine Batch einbauen und on the fly generieren/ausführen.
ein vbscript ist IMO hier eleganter als eine Batch bei der du natürlich per Vol Lw: auch die Ausgabe auswerten könntest.
' EnumDiskLabel.vbs -------------------------------------------------
On Error Resume Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_LogicalDisk",,48)
For Each objItem in colItems
Wscript.Echo objItem.Caption & vbTab & objItem.VolumeName
Next
Gruß
LotPings
Das Script ließe sich auch in eine Batch einbauen und on the fly generieren/ausführen.
Als Batch:
Im weiteren Verlauf verwendest du dann an Stelle des Laufwerksbuchstabens die Variable %lw%
@echo off & setlocal
:: zu durchsuchende Laufwerksbuchstaben eintragen
set Suche=F G H I J K L M N O P Q R S T U V W X Y Z
::Volume Label der gesuchten Partition
set Label=USB-123
set lw=
for %%a in (%suche%) do for /f "tokens=6 delims= " %%i in ('VOL %%a:') do (if "%%i"=="%Label%" set LW=%%a:)
if defined lw (@echo %lw%) else (@echo Kein passendes Volume gefunden & goto :eof)
Pause
Im weiteren Verlauf verwendest du dann an Stelle des Laufwerksbuchstabens die Variable %lw%