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-Key: 222728

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

Printed on: April 16, 2024 at 09:04 o'clock

Member: dave84620
dave84620 Nov 22, 2013 at 11:49:25 (UTC)
Goto Top
if exist c:nul echo c: ist vorhanden

Gruß
Dave
Member: Endoro
Endoro Nov 22, 2013 at 12:15:12 (UTC)
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.
Member: Dpole86
Dpole86 Nov 22, 2013 at 15:44:11 (UTC)
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
Member: loonydeluxe
loonydeluxe Nov 22, 2013 at 21:39:40 (UTC)
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
Member: dave84620
dave84620 Nov 23, 2013 at 15:11:06 (UTC)
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
Member: WinCobold
WinCobold Nov 25, 2013 at 15:04:50 (UTC)
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
Member: loonydeluxe
loonydeluxe Nov 25, 2013 at 21:16:26 (UTC)
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...