Laufwerk trennen wenn. Freigabe
Hallo liebe Gemeinde.
Ich bin ganz neu hier und habe eine einfache Frage (denke ich) zu batch-Skript bzw., wie ich mein Problem lösen kann. Leider kenne ich mich mit bat überhaupt nicht aus, bzw. sehr schlecht, fange erst an, es zu lernen. In dem Forum habe ich leider nichts gefunden. Kann mir vielleicht jemand helfen.
Nicht falsch verstehen, ich erwarte nicht, dass jemand mir das fertige Script schreibt. Ich brauche eventuell eine Erklärung wie und wieso.
Und zwar:
Ich möchte auf mehreren Computern per bat-Datei ein evtl. verbundenes Laufwerk trennen, aber nur, wenn das Laufwerk auf eine bestimmte Freigabe zeigt, anderenfalls nicht trennen.
Bsp.:
Wenn Laufwerk „Z:“ existiert und Z: = \\xxx\yyy\zzz, dann löschen, sonst weiter.
Wie ein Laufwerk zu trennen oder zu verbinden ist, weiß ich schon z. B. „IF EXIST Z: NET USE Z: \D \Y“
Im nächsten Schritt möchte ich in derselben batch-Datei weitere Laufwerke verbinden und am Ende den User informieren, ob alles i.O. ist, oder evtl. Fehler aufgetreten ist, weil z.B. ein Buchstabe schon belegt ist.
Zur Info: Die User haben die entsprechenden Berechtigungen, d. h. sie dürfen Bat-Dateien ausführen, Laufwerke trennen und verbinden.
Könnte\möchte mir jemand helfen?
Grüße
Ich bin ganz neu hier und habe eine einfache Frage (denke ich) zu batch-Skript bzw., wie ich mein Problem lösen kann. Leider kenne ich mich mit bat überhaupt nicht aus, bzw. sehr schlecht, fange erst an, es zu lernen. In dem Forum habe ich leider nichts gefunden. Kann mir vielleicht jemand helfen.
Nicht falsch verstehen, ich erwarte nicht, dass jemand mir das fertige Script schreibt. Ich brauche eventuell eine Erklärung wie und wieso.
Und zwar:
Ich möchte auf mehreren Computern per bat-Datei ein evtl. verbundenes Laufwerk trennen, aber nur, wenn das Laufwerk auf eine bestimmte Freigabe zeigt, anderenfalls nicht trennen.
Bsp.:
Wenn Laufwerk „Z:“ existiert und Z: = \\xxx\yyy\zzz, dann löschen, sonst weiter.
Wie ein Laufwerk zu trennen oder zu verbinden ist, weiß ich schon z. B. „IF EXIST Z: NET USE Z: \D \Y“
Im nächsten Schritt möchte ich in derselben batch-Datei weitere Laufwerke verbinden und am Ende den User informieren, ob alles i.O. ist, oder evtl. Fehler aufgetreten ist, weil z.B. ein Buchstabe schon belegt ist.
Zur Info: Die User haben die entsprechenden Berechtigungen, d. h. sie dürfen Bat-Dateien ausführen, Laufwerke trennen und verbinden.
Könnte\möchte mir jemand helfen?
Grüße
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 12428554564
Url: https://administrator.de/forum/laufwerk-trennen-wenn-freigabe-12428554564.html
Ausgedruckt am: 20.04.2025 um 12:04 Uhr
5 Kommentare
Neuester Kommentar
Moin
zwei Ansätze:
- "Quick'nDirty" legst Du in den Freigaben jeweils eine bestimmte und nur lesbare Datei ab, die Du abfragst.
oder
- frage die Freigabe mit net use ab und werte die Ausgabe aus
Gruß
zwei Ansätze:
- "Quick'nDirty" legst Du in den Freigaben jeweils eine bestimmte und nur lesbare Datei ab, die Du abfragst.
if exist z:\<dateiname> (
"mache was, wenn das Laufwerk auf die Freigabe zeigt"
)
- frage die Freigabe mit net use ab und werte die Ausgabe aus
net use | find /I "Z: \\xxx\yyy\zzz"
if %errorlevel% == 0 (
"mache was, wenn das Laufwerk auf die Freigabe zeigt"
)
Gruß

Ich würde ja heute kein Batch mehr dafür nehmen aber egal ...
So fragt man die Freigabe einer LogicalDisk unter Batch mittels WMI ab
Powershell gibts auch mehrere Wege nach Rom für die Abfrage des Shares eines gemappten Laufwerks
oder
🖖
So fragt man die Freigabe einer LogicalDisk unter Batch mittels WMI ab
@echo off
for /f "tokens=2 delims==" %%a in ('wmic logicaldisk where ^(DeviceId^="Z:" AND ProviderName^="\\\\server\\freigabe"^) get DeviceID /value') do set exists=yes
if "%exists%" == "yes" (
rem do something
) else (
rem do something else
)
Powershell gibts auch mehrere Wege nach Rom für die Abfrage des Shares eines gemappten Laufwerks
if (Get-PSDrive -Name z | ? DisplayRoot -eq '\\server\freigabe'){
# do something
}else{
# do something else
}
if (Get-CimInstance Win32_Mappedlogicaldisk -Filter "DeviceId = 'Z:' AND ProviderName = '\\\\server\\freigabe'"){
# do something
}else{
# do something else
}
🖖
Serie: batch
Laufwerk trennen wenn. Freigabe5