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

If-Abfrage mit Wildcard

Frage Entwicklung Batch & Shell

Mitglied: lukluk

lukluk (Level 1) - Jetzt verbinden

14.04.2009, aktualisiert 22:04 Uhr, 7918 Aufrufe, 8 Kommentare

Aloha ihr lieben,

erstmal vorweg: ich habe google nur ca 5min zu Hilfe genommen, da meine Frage doch rel. dringend ist und ich keine Zeit verlieren möchte. Für viele wird es zwar trivial sein aber ich habe kaum Plan vom Batch-Scripting.. nur halt das, was man so "standardmäßig" weiss.

Ich benötige folgende Anfrage, die ich nun einfach mal in Pseudocode dahinkritzel:

01.
if %USERNAME% == irgendwas_xy OR %USERNAME == irgendwas_abcde goto :yes 
02.
else goto :eof
(wobei das _xy und das _abcde 'hardcoded' ist.. also immer das selbe. irgendwas hat variable länge)

Würde sich irgendwer erbarmen und ein paar Minuten seiner Kompetenz opfern und mir womöglich zeitnah helfen? Dem wäre ich sehr sehr darkbar .

Gruß, luk
Mitglied: Sonnenscheinhasser
14.04.2009 um 22:17 Uhr
Du willst also immer nur die Zeichenkette vor dem Underscore abfragen?
Dann suchst du tokens und delims.

Hier sehr anschaulich erklärt: http://www.robvanderwoude.com/ntfortokens.php
Bitte warten ..
Mitglied: lukluk
14.04.2009 um 22:27 Uhr
Danke für deine Antwort.. aber nein, eher andersherum. Ich will im Prinzip den Usernamen abfragen, ob ein _xy ODER ein _abcde existriert.

Beispiele:
Username = bla -> goto eof
Username = blubb -> goto eof
Username = bla_xy -> goto yes
Username = Blubba_aa -> goto eof
Username = moo_abcde -> goto yes


d.h. Immer wenn der eigene Username ein _xy oder ein _abcde enthält, dann will ich den :yes Part ausführen.. das ganze soll am ende ins Logonscript.

Die Delims scheinen der richtige Weg zu sein aber soweit ich das gerade gesehen habe sind sie für FOR-Schleifen in Bezug auf self-ausgaben der batch-Datei? Wie gesagt.. ich bin nicht allzu gewandt in der Hinsicht... gelobe aber besseurng - sobald die Zeit da ist.
Bitte warten ..
Mitglied: Sonnenscheinhasser
14.04.2009 um 22:44 Uhr
Hm, wenn mal ein Underscore vorhanden ist oder nicht, wird es nicht ganz so einfach, denn delim sucht ja nach dem Trennungszeichen, in deinem Fall der Underscore.

Aber es müsste gehen. Dings brauche ich jetzt erst mal eine Mütze Schlaf wegen extrem kurzer Nacht gestern.

Schwarze Grüße,
Tom
Bitte warten ..
Mitglied: lukluk
14.04.2009 um 22:47 Uhr
naja in php würd das ja zB problemlos gehen indem man ein sagt:
var = explode an der stelle "_"
if var[1] existiert dann ...
else eof

so etwas muss es doch auch in batch geben? zB der Fall, dass ein angegebener delim nicht existiert in der variable?

Trotzdem Danke für deine Hilfe und eine gute Nacht.
Bitte warten ..
Mitglied: bastla
14.04.2009 um 22:56 Uhr
Hallo lukluk!

Sollte sich so lösen lassen:
01.
echo %username%|findstr /e "_xy">nul && goto :yes 
02.
echo %username%|findstr /e "_abcde">nul && goto :yes 
03.
goto :eof 
04.
:yes
Grüße
bastla

[Edit] Aufgrund der geposteten Beispiele korrigiert [/Edit]
Bitte warten ..
Mitglied: lukluk
14.04.2009 um 23:03 Uhr
Hallo Bastler

das ganze stellt ein Logon-Script dar. Die User haben halt verschiedene Logins, je nachdem was für ein Account das ist. Bestehend aus Nachname_zusatz. Wobei der Zusatz ENTWEDER "xy" ODER "abcde" ist. Nur diese beiden sind möglich.

Beispiele wären nun:

Meier
Mueller
Bauer_xy
Franz
Mustermann
Musterfrau_abcde
Schroeder
Schulz
Schneider_xy


In diesem Fall würde ich für Bauer, Musterfrau und Schneider halt etwas ausführen.
Bitte warten ..
Mitglied: bastla
14.04.2009 um 23:07 Uhr
Hallo lukluk!

Die nochmals korrigierte Version oben sollte jetzt eigentlich passen ...

... obwohl es so eleganter wäre:
01.
echo %username%|findstr "_xy\> _abcde\>">nul || goto :eof 
02.
:yes
Grüße
bastla
Bitte warten ..
Mitglied: lukluk
14.04.2009 um 23:18 Uhr
Na dann sag' ich mal vielen lieben Dank! Werde es gleich mal testen.

Gruß, luk

Edit: Es funkt wunderbar.. nochmals besten Dank!
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

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

Ähnliche Inhalte
Datenbanken
gelöst IF Abfrage im SELECT Oracle SQL (2)

Frage von Roadrunner777 zum Thema Datenbanken ...

Exchange Server
gelöst Exchange 2010 Activesync Problem bei IOS 10.1.1 und Wildcard SSL Zertifikat (2)

Frage von hasel123 zum Thema Exchange Server ...

Datenbanken
gelöst Row Number bei einer Abfrage sinnvoll einsetzen (1)

Frage von Aximand zum Thema Datenbanken ...

Heiß diskutierte Inhalte
Exchange Server
gelöst Exchange 2010 Berechtigungen wiederherstellen (20)

Frage von semperf1delis zum Thema Exchange Server ...

Windows Server
DHCP Server switchen (20)

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

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...

Exchange Server
DNS Einstellung - zwei feste IPs für Mailserver (15)

Frage von ivan0s zum Thema Exchange Server ...