Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

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

4. Buchstaben einer Variable auslesen

Frage Entwicklung Batch & Shell

Mitglied: kafri84

kafri84 (Level 1) - Jetzt verbinden

27.11.2009, aktualisiert 18.10.2012, 5725 Aufrufe, 7 Kommentare

Hallo zusammen,

Ich habe ein Problem und komme jetzt leider nicht mehr weiter.

Ich möchte mit einem Batchfile aus der Variable %computername% den 4. Buchstaben auslesen und je nach dem was das für ein Buchstabe ist, dann weiterverarbeiten.
Durch die Suchfunktion habe ich mit bereits folgenden Code erstellt. Aber sorichtig funktioniert er nicht.

for /F "tokens=1 delims=:" %%a in ('echo %computername%') DO call :up1 %%a

:up1

set compname=%1
set buchstabe = %compname:~3,1%

if /i %buchstabe% == P goto PC
if /i %buchstabe% == L goto Laptop

...
...


Ich hab das Gefühl, als wenn ich da irgendeinen größeren Fehler drin habe. Wenn jemand eine Verbesserungsvorschlag hat, würde ich mich sehr freuen.



Vielen Dank schonmal im Voraus.
Mitglied: mag-lion
27.11.2009 um 10:52 Uhr
Hi,

du hast schon (fast) die Lösung in deinem Beitrag.

Gib mal am cmd ein: "echo %computername:~4,1%"

Gruß
mag
Bitte warten ..
Mitglied: Snowman25
27.11.2009 um 10:54 Uhr
ausserdem würde ich dir empfehlen, die Leerzeichen vor und nach jedem Gleich-Zeichen zu entfernen
Bitte warten ..
Mitglied: Miyamoto
27.11.2009 um 11:00 Uhr
Hi,
wo zu brauchst du bitte eine Schleife??
Das ganze geht auch ohne.

01.
 
02.
set buchstabe = %computername:~3,1% 
03.
 
04.
if /i "%buchstabe%" == "P" goto PC 
05.
if /i "%buchstabe%" == "L" goto Laptop 
06.
 
Bitte warten ..
Mitglied: laster
27.11.2009 um 11:03 Uhr
Hallo,
noch einfacher:
01.
if /i "%computername:~3,1%" == "P" goto PC
der Hinweis von Snowman25 mit den Leerzeichen ist wichtig!

LS
Bitte warten ..
Mitglied: kafri84
27.11.2009 um 11:21 Uhr
Vielen Dank für die vielen Tipps!
Es funktioniert wunderbar.

Nur noch eine Frage. Warum ist das mit den Leerzeichen so wichtig? Es funktioniert doch auch mit Leerzeichen...
Bitte warten ..
Mitglied: mag-lion
27.11.2009, aktualisiert 18.10.2012
Zitat von kafri84:
Vielen Dank für die vielen Tipps!
Es funktioniert wunderbar.

Nur noch eine Frage. Warum ist das mit den Leerzeichen so wichtig? Es
funktioniert doch auch mit Leerzeichen...

Hier dazu noch mehr gute Tipps, darin wird auch deine Frage beantwortet.

http://www.administrator.de/wissen/workshop-batch-for-runaways-part-ii- ...
Bitte warten ..
Mitglied: kafri84
01.12.2009 um 12:29 Uhr
Okay! vielen Dank für den Link!
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst In einer Batch-Datei einen variablen Teil eines Dateinamens auslesen (5)

Frage von dh0815 zum Thema Batch & Shell ...

Exchange Server
Ersten Buchstaben einer Mail werden abgeschnitten (2)

Frage von Philipp.S zum Thema Exchange Server ...

PHP
gelöst TXT Datei auslesen und bestimmte Zeilen in Variable setzen (11)

Frage von 126594 zum Thema PHP ...

Neue Wissensbeiträge
Windows Update

Novemberpatches und Nadeldrucker bereiten Kopfschmerzen

(14)

Tipp von MettGurke zum Thema Windows Update ...

Windows 10

Abhilfe für Abstürze von CDPUsersvc auf Win10 1607 und 2016 1607

(7)

Tipp von DerWoWusste zum Thema Windows 10 ...

RedHat, CentOS, Fedora

Fedora 27 ist verfügbar

Information von Frank zum Thema RedHat, CentOS, Fedora ...

Heiß diskutierte Inhalte
Batch & Shell
Batch Programm verhalten bei shoutdown -p (18)

Frage von Michael-ITler zum Thema Batch & Shell ...

Router & Routing
Freigabe aus anderem Netz nicht erreichbar (15)

Frage von McLion zum Thema Router & Routing ...

Festplatten, SSD, Raid
Raidcontroller funktioniert nur, wenn unter Legacy-Boot gestartet wird (13)

Frage von DerWoWusste zum Thema Festplatten, SSD, Raid ...

Linux Desktop
Bildschirmauflösung unter Linux festlegen (12)

Frage von itebob zum Thema Linux Desktop ...