dpole86
Goto Top

Überprüfen ob laufwerk verbunden ist

Guten Morgen Zusammen

Ich brauch eine Lösung um zu überprüfen ob ein Laufwerksbuchstabe Existiert.

Muss ich das mit einer For Schleife machen oder reicht auch einfach ein if Exist Z: ?

BS ist Windows 7 Professional x64

Grüße und Danke

D_pole86

Content-ID: 222728

Url: https://administrator.de/contentid/222728

Ausgedruckt am: 25.11.2024 um 01:11 Uhr

dave84620
dave84620 22.11.2013 um 12:49:25 Uhr
Goto Top
if exist c:nul echo c: ist vorhanden

Gruß
Dave
Endoro
Endoro 22.11.2013 um 13:15:12 Uhr
Goto Top
Zitat von @dave84620:

if exist c:nul echo c: ist vorhanden
Klappt auch prima als Schleife:
FOR %A IN (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) DO @IF EXIST %A:NUL ECHO %A: EXISTS
lg.
Dpole86
Dpole86 22.11.2013 um 16:44:11 Uhr
Goto Top
Hi Endoro, Hi Dave

Mal zu verständnis. Was macht den das NUL ?
In einer Anleitung habe ich gelesen, das >nul die Anzeige unterdrück und 2>nul ausgabe von Fehlern unterdrückt.

Aber was macht nul?

Ich danke euch trotzdem :D
loonydeluxe
loonydeluxe 22.11.2013 um 22:39:40 Uhr
Goto Top
versuchs damit:

echo irgendwas > x:\test.txt
dir x:\test.txt
if %errorlevel%==0 goto existiert

echo LAUFWERK NICHT GEFUNDEN!
goto fehlerbehandlung

:existiert
echo LAFUWERK EXISTIERT!
goto ende


:fehlerbehandlung
REM HIER ALLES EINTRAGEN, UM DEN FEHLER ZU BEHANDELN
goto ende

:ende

--> dieser Schnipsel schreibt eine "test.txt" aufs Laufwerk X:, wenn die Datei anschließend gefunden wird (Errorlevel=0) ist alles gut, sonst wird die Fehlerbehandlung ausgeführt
dave84620
dave84620 23.11.2013 um 16:11:06 Uhr
Goto Top
Hallo Dpole86,

nul ist ein "virtuelles Gerät", das Daten im Nirvana verschwinden lässt. Wie Du richtig schreibst, wenn Du die Ausgabe auf nul umlenkst, wird sie unterdrückt. Siehe auch http://de.wikipedia.org/wiki//dev/null

Aber darum geht es auch garnicht. Du kannst nul in meinem Bsp. auch z.B. durch con ersetzen. Es ist einfach nur ein Eintrag, der in jedem beliebigen Ordner vorhanden ist und somit abgefragt werden kann. Das ist alles :o)

Schöne Grüße
Dave
WinCobold
WinCobold 25.11.2013 um 16:04:50 Uhr
Goto Top
Hallo loonydeluxe,

mutig, mutig! Abgesehen davon, dass dein Vorschlag nur funktioniert, wenn du Schreibberechtigung auf das Root im Laufwerk hast, wäre ich nicht so glücklich, wenn meine test.txt von jemandem mit dem Inhalt "irgendwas" überschrieben würde, nur um zu prüfen, ob er Zugriff auf das Laufwerk hat.

Gruß
WinCobold
loonydeluxe
loonydeluxe 25.11.2013 um 22:16:26 Uhr
Goto Top
Ja wozu ist das Anlegen einer Datei denn auch gut... damit ein "dir"-Befehl für das jeweilige Verzeichnis im Zweifelsfall auch mehr zurückgibt als "Keine Datei gefunden" = errorlevel 1. Eine Datei anzulegen ist nur dafür da, dass überhaupt was drin ist im Verzeichnis, damit der errorlevel 0 werden kann. Herzlich Willkommen auf dem Planeten Windows, lieber WinCobold.
Und naja, wenn ich wissen will, ob ein Laufwerk bzw. Verzeichnis existiert, dann meistens deshalb, WEIL ich Schreibzugriff haben will (z. B. für das Anlegen von Backups).
Sofern ich davon ausgehen kann, dass ein Verzeichnis existiert und da auch was drin ist, tuts auch ein "dir X:\ABSOLUTERPFAD"

und wenn du tatsächlich eine Datei namens "test.txt" speichern willst, dann nenn die Test-Datei eben qwertz123.txt oder was-interessiert-mich-der-zugriff-solange-der-wincobold-schreiben-darf.txt oder was auch immer dir grad einfällt, was du selbst nicht verwenden willst...

Aber dennoch: es funktioniert...