Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Suche anderen Befehl zur Erkennung des Laufwerksbuchstaben

Frage Entwicklung Batch & Shell

Mitglied: 48046

48046 (Level 1)

21.06.2007, aktualisiert 22.06.2007, 4170 Aufrufe, 7 Kommentare

Hi !

Wie der Titel des Threads schon aussagt, suche ich einen anderen Befehl als den, den ich zur Zeit kenne, bzw. nutze:


%~d0


Dieser funktioniert unter XP problemlos, aber leider kann WIN98 nichts mit dem Befehl anfangen. Weiß jemand von euch noch eine andere Möglichkeit, die auch WIN98 akzeptiert.

Es geht mir wie gesagt nur um den Laufwerksbuchstaben, keine Pfadangaben.


Gruß ELMI
Mitglied: bastla
21.06.2007 um 21:25 Uhr
Hallo Elmi55!

Vermutlich wird Biber einen eleganteren Weg kennen, aber so sollte es zumindest auch gehen:
01.
for %%i in (C D E F G) do if exist %%i:\DeinBatch.bat set LW=%%i
Die Liste der möglichen Laufwerksbuchstaben kannst Du ja bei Bedarf entsprechend verlängern ...

Grüße
bastla
Bitte warten ..
Mitglied: onegasee59
21.06.2007 um 23:20 Uhr
Hallo,

stammt von Biber
01.
:: --- getDrivesIWant2C.bat 
02.
@echo off & setlocal 
03.
set vbsSnippet=%temp%\%random%.vbs 
04.
rem echo %vbssnippet% 
05.
>%vbsSnippet% echo Set FSO = CreateObject("Scripting.FileSystemObject")  
06.
>>%vbsSnippet% echo Set Drives = FSO.Drives 
07.
>>%vbsSnippet% echo set Args = wscript.arguments 
08.
>>%vbsSnippet% echo alldrives="" 
09.
>>%vbsSnippet% echo wanteddrvs="2" 
10.
>>%vbsSnippet% echo for i=0 to Args.count-1 
11.
>>%vbsSnippet% echo wanteddrvs= wanteddrvs + "," + args(i) 
12.
>>%vbsSnippet% echo next 
13.
>>%vbsSnippet% echo For Each d in Drives 
14.
>>%vbsSnippet% echo if instr(1,wanteddrvs,d.Drivetype) then alldrives= alldrives +"," + d.Driveletter 
15.
>>%vbsSnippet% echo Next>>%vbsSnippet% 
16.
>>%vbsSnippet% echo wscript.echo mid(alldrives,2) 
17.
>>%vbsSnippet% echo Set Drives = nothing 
18.
>>%vbsSnippet% echo Set FileSystemObject = nothing 
19.
>>%vbsSnippet% echo wscript.quit 
20.
 
21.
rem Ein bisschen Demo: 
22.
rem For /f %%i in ('cscript //nologo %vbsSnippet%') do echo [DEBUG Lw-Liste nur Fixed ] %%i 
23.
rem For /f %%i in ('cscript //nologo %vbsSnippet% 1 4 ') do echo [DEBUG Lw-Liste Fixed + Removable+ CDRom] %%i 
24.
rem Ende von: Ein bisschen Demo: 
25.
For /f %%i in ('cscript //nologo %vbsSnippet%') do set "lwliste=%%i" 
26.
echo [Lw-Liste Fixed] %lwliste% 
27.
rem echo [Der For-Befehl nur Fixed-Lw:.. for %%%%a in (%%lwliste%%) ..-^>.. for %%%%a in (%lwliste%) 
28.
del %vbsSnippet% 
29.
pause
gruß

PS:
Verflucht nochmal, wieso übernimmt [<code>] nicht die korrekte Formatierung und setzt die dämlichen Zeilenumbrüche?
Bitte warten ..
Mitglied: 48046
22.06.2007 um 07:01 Uhr
Jo danke Leute, klappt prima


P.S. Noch nebenbei, EXIT hat auch keine Wirkung unter WIN98, also DOS-Fenster schließt nicht nach dem Beenden. Ist zwar das kleinste Übel, aber vielleicht gibts ja doch noch was?


Gruß ELMI
Bitte warten ..
Mitglied: bastla
22.06.2007 um 07:05 Uhr
Hallo Elmi55!

Die VBS-Variante hast Du unter W98 verwenden können?

Grüße
bastla
Bitte warten ..
Mitglied: 48046
22.06.2007 um 07:48 Uhr
Hi Bastla !


Nein nich das VBS-Script, sondern Deine for-Abfrage.
Einzigstes Manko dabei ist, dass wenn ich die Liste der LW-Buchstaben verlängere bzw. komplettiere, dann bringt Windows Fehlermeldungen bei Laufwerken die zur Zeit keinen Datenträger haben.

Beispiel wenn ein Chipkartenleser existiert, dieser hat 3 LW-Buchstaben, aber es steckt halt keine Speicherkarte drin, dann kommt folgende Meldung:

Windows - Kein Datenträger

X Exception Processing Message c0000013 Paramters 75b0bf9c 4 75b0bf9c 75b0bf9c

ABbrechen Wiederholen Weiter
Bei Laufwerken bis zu Z abwärts die auch garnicht eingebaut sind, gibts keine Fehlermeldung.



P.S. Habe es eben auch noch als Alternative zu %~d0 mit %cd:~0,3% versucht, welches unter XP wiederum problemlos klappt, aber WIN98 kennt auch diese Befehlskombination nicht



Gruß ELMI
Bitte warten ..
Mitglied: 48046
22.06.2007 um 10:47 Uhr
auch gerade probiert:

for /f "delims=:" %%i in ('cd') do set LW=%%i


Bei XP einwandfrei, WIN98 meldet einen Syntaxfehler..........
Das dürfte doch eigentlich nicht nicht so schwer sein, nur den Laufwerksbuchstaben unter WIN98 zu ermitteln. Man kann so viel mit Batchbefehlen machen, und dann hängts im Prinzip an so einer Kleinigkeit.....


Gruß ELMI
Bitte warten ..
Mitglied: 48046
22.06.2007 um 13:42 Uhr
Hab grad rausbekommen, das WIN98 diesen Befehl akzeptiert:

%0

Das ergibt Laufwerk + Dateiname

Das wäre zumindest mal ein Ansatz, jetzt müßte ich wissen, wie man nur die ersten 3 Buchstaben von %0 ausliest, dann hätte ich ja mein Laufwerk

Wer weiß da Rat ?


Gruß ELMI
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

Frage von M.Marz zum Thema Windows Server ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Windows 7
Verteillösung für IT-Raum benötigt (12)

Frage von TheM-Man zum Thema Windows 7 ...