Top-Themen

Aktuelle Themen (A bis Z)

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 Bestimmte Zeichen aus Variable lesen

Mitglied: 48046

48046 (Level 1)

22.06.2007, aktualisiert 23.06.2007, 8430 Aufrufe, 2 Kommentare

Hallo !


Weiß jemand wie ich aus folgender Variable eine gewisse Anzahl Zeichen auslesen kann?

%0



Hintergrund ist, ich suche eine Möglichkeit das aktuelle Laufwerk auf dem die Batch läuft, zu ermitteln. Normalerweise könnte ich es mit folgenden Befehlen machen, aber diese laufen nur unter XP:

1.) Möglichkeit %~d0

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

3.) Möglichlkeit for %%i in (C D E F G) do if exist %%i:\DeinBatch.bat set LW=%%i
Wobei Windows bei dieser eine Fehlermeldung für abgefragte Laufwerke mit nicht vorhandenem Datenträger, ausgibt!



Das einzigste was bis jetzt bei WIN98 akzeptiert wurde, ist folgendes:

%0
(Ergibt Laufwerk + Dateiname; also z.B. C:\Test.bat)



1.) Jetzt müßte ich wissen, wie man nur die ersten 3 Buchstaben von %0 ausliest, dann hätte ich ja mein Laufwerk.
2.) Oder aber jemand weiß noch eine andere Möglichkeit den aktuellen Laufwerksbuchstaben unter WIN98 zu ermitteln.


P.S. Ganz nebenbei, auf EXIT reagiert WIN98 auch nicht mit dem Schliessen des DOS-Fensters!?

Gruß ELMI
Mitglied: bastla
22.06.2007 um 22:22 Uhr
Hallo Elmi55!

Da es Dir ein derartiges Anliegen zu sein scheint, habe ich mich etwas intensiver umgesehen, ua hier.

Voraussetzung für den folgenden Ansatz ist, dass Choice.exe verfügbar ist (also etwa in W98). Daraus folgt, dass Du vorweg das OS bestimmen (oder, noch besser, das Vorhandensein von Choice.exe überprüfen) musst, um die richtige Variante auszuführen, also etwa:

01.
@ECHO OFF 
02.
IF "%1"=="Loop" GOTO Loop 
03.
IF /I "%OS%"=="Windows_NT" GOTO NT 
04.
ECHO \| CHOICE /C:;%0;] %0 Loop > "%TEMP%\TEMP.BAT" 
05.
CALL "%TEMP%\TEMP.BAT" 
06.
REM Ab hier der eigentliche Batch 
07.
:Batch 
08.
ECHO LW ist: %DR% 
09.
PAUSE 
10.
GOTO End 
11.
 
12.
:Loop 
13.
SHIFT 
14.
IF "%1"=="\" GOTO End 
15.
IF NOT "%1"=="[" SET DR=%DR%%1 
16.
GOTO Loop 
17.
:NT 
18.
SET DR=%~d0% 
19.
goto Batch 
20.
:End
Grüße
bastla

P.S.: Du könntest mir einen Gefallen tun und die Schreibweise von Variable in Deinem Beitrag richtig stellen ...
Bitte warten ..
Mitglied: 48046
23.06.2007 um 08:02 Uhr
Hi bastla !


Du bist genial, ich verstehe zwar nicht so ganz den Inhalt Deiner Befehle, aber es funktioniert, und das ist das wichtigste, hurra Wußte doch, dass es möglich ist, und Du hast es mal wieder hingekriegt!

P.S. Hab das Wort Variable richtig gestellt


Danke nochmals, besonders für Deine Mühe & Zeit die Du dafür investiert hast!


Gruß ELMI
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Variable aus Datei lesen ohne Datenverlust

gelöst Frage von Frank1993Batch & Shell5 Kommentare

Hallo Leute, ich habe ein Problem beim einlesen einer Variable aus einer Datei. Ich finde keinen Lösungsweg, deswegen wende ...

Batch & Shell

Batch Variable auf 5 Zeichen begrenzen

gelöst Frage von PinkFLuffyUnicornBatch & Shell5 Kommentare

Hallo zusammen, ich habe folgendes Problem: ich habe ein kleines Batch Programm, welches eine Benutzereingabe erfordert. der Benutzer soll ...

C und C++

Frage zu bestimmten Zeichen in C++ Codezeile

gelöst Frage von emeriksC und C++3 Kommentare

Hi, bin C Laie (keine Ahnung) und versuche C Quellcodes zu lesen und zu verstehen. Bin sonst in VB.Net ...

Batch & Shell

Entfernen eines Strings vor einem bestimmten Zeichens in einer Textdatei

gelöst Frage von Privex007Batch & Shell3 Kommentare

Hallo an alle Coder, ich habe Probleme mit dem extrahieren eines String aus einer "txt"-Datei. Ich habe folgende Zeilen ...

Neue Wissensbeiträge
Windows 10

USB Maus und Tastatur versagen Dienst unter Windows 10

Erfahrungsbericht von hardykopff vor 1 TagWindows 105 Kommentare

Da steht man ziemlich dumm da, wenn der PC sich wegen fehlender USB Tastatur und Maus nicht bedienen lässt. ...

Administrator.de Feedback
Update der Seite: Alles zentriert
Information von Frank vor 1 TagAdministrator.de Feedback18 Kommentare

Hallo User, die größte Änderung von Release 5.8 ist das Zentrieren der Webseite (auf großen Bildschirmen) und ein "Welcome"-Teaser ...

Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 2 TagenHumor (lol)4 Kommentare

Genau darauf habe ich gewartet! ;-) Der beliebte Messaging-Dienst WhatsApp erhält eine praktische neue Funktion: Ab dem nächsten Update ...

Google Android

Googles "Android Enterprise Recommended" für Unternehmen

Information von kgborn vor 2 TagenGoogle Android3 Kommentare

Hier eine Information, die für Administratoren und Verantwortliche in Unternehmen, die für die Beschaffung und das Rollout von Android-Geräten ...

Heiß diskutierte Inhalte
Speicherkarten
Vergessliche USB-Sticks?
Frage von hanheikSpeicherkarten14 Kommentare

Ich habe in den letzten Tagen 500 USB-Sticks mit Bilddateien bespielt. Obwohl ich die Dateien mit größter Sorgfalt kopiert ...

Hyper-V
Hyper-V mit altem XEON-Server. Was ist falsch?
Frage von LollipopHyper-V11 Kommentare

Hallo Bin etwas frustriert. Kleinbetrieb, ca. 15 PC's, 2 Stk. Server mit einigen virtuellen PC's für Fernwartung, VaultServer für ...

Windows Server
NTFS Berechtigungen Ordnerstruktur
Frage von hukahu23489Windows Server11 Kommentare

Hallo, ich bin seit kurzem in einer neuen IT-Abteilung und bin über das Berechtigungskonzept des Unternehmens sehr schockiert. Ich ...

Exchange Server
NDR umleiten
Frage von isomasterExchange Server10 Kommentare

Hallo Kollege, ich habe ein Problem mit dem Exchange Server. Wir haben unsere info@ Adresse als Verteilergruppe eingebunden (so ...