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

überprüfung auf groß-kleinschreibung mit -find-

Frage Entwicklung Batch & Shell

Mitglied: 63425

63425 (Level 1)

29.03.2008, aktualisiert 30.03.2008, 7628 Aufrufe, 3 Kommentare

hallo.

meine erste frage in dem forum ist eigtl ziemlich einfach aber führt bei meiner batch zu problemen.

eine for - schleife soll daten aus einer datei lesen und in verschiedene strings teilen. soweit so gut.
sobald ich aber den letzten teil mit 'find' überprüfen möchte hat man das gefühl, cmd hängt sich fast dabei auf.

01.
for /f "delims=: tokens=1,2,*" %%i in ('findstr /v %tVar% "%pList%"') do ( 
02.
... 
03.
echo %%k | find "efault" 
04.
... 
05.
06.
 
es soll also nur geprüft werden, ob 'default' vorhanden ist und zwar egal ob groß oder klein.
wie kann ich das am elegantesten lösen, ohne noch extra zeilen einbauen zu müssen.

ich würde ja gerne auch auf eine if-abfrage zurück greifen:

01.
set sDef=efault 
02.
 
03.
if ( "%%k" equ "D%sDef%" || "%%k" equ "d%sDef%") 
04.
 
ich weiß, dass dass so nicht möglich ist, würde aber trotzdem gerne wissen, wie man das so ähnlich lösen könnte.

aensz
Mitglied: bastla
29.03.2008 um 19:05 Uhr
Hallo #aensz und willkommen im Forum!

Egal, ob Du "find" oder "findstr" verwendest, kannst Du mit dem Schalter "/i" die Unterscheidung zwischen Groß- und Kleinschreibung verhindern (siehe auch "findstr /?").

Grüße
bastla
Bitte warten ..
Mitglied: 63425
29.03.2008 um 19:30 Uhr
hi.

ok, das war ein denkfehler von mir. die option mit /i kannte ich natürlich vorher schon.
aber ich hatte gerade eine falsche vorstellung davon, wie meine eigene schleife in dem moment arbeitet.

was mich trotzdem interessiert, warum 'find' dermaßen langam arbeitet und wie genau man solche komplexen if-abfragen gestalten kann.

zum forum:
ich werde, denke ich, in nächster zeit öfter hier vorbei schauen.
ich hatte vorher schon einige beiträge gelesen und finde es sehr interessant.

tschau, aensz




mir ist gerade aufgefallen, dass es wohl doch kein denkfehler war.
%sDef% kommt in keiner zeile vor, dh 'for' soll alle zeilen anzeigen und zerlegen. das hätte ich wohl dazu sagen müssen. am ende kommt in %%k dann also was ungefiltertes rein und das wollte ich abfangen.
ich könnte die datei auch einfach nur auf groß/kleinschreibung ändern aber das wäre zu einfach.

aensz
Bitte warten ..
Mitglied: 63425
30.03.2008 um 01:45 Uhr
jetzt habe ich eine lösung gefunden. war natürlich wieder viel einfacher als gedacht und wurde eigentlich schon oft im forum kommentiert.

01.
echo %%k | find /i "%D%" >%tDatei% 
02.
set /p tVar=<%tDatei%
oder, etwas kürzer:

01.
echo %%k | find /i "%D%" >nul  && set tVar=%D%
aensz
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

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

Ähnliche Inhalte
Notebook & Zubehör
Laptop schreibt groß weiter, obwohl Shift losgelassen wurde (6)

Frage von Yauhun zum Thema Notebook & Zubehör ...

Batch & Shell
gelöst Nonsense Error - find ihn nicht. (Batch) (7)

Frage von clragon zum Thema Batch & Shell ...

Windows Server
Windows Ordner sehr groß - Ist das normal? (6)

Frage von xchr1s zum Thema Windows Server ...

Windows Netzwerk
Microsoft-Software-Compliance-Status (Lizenz Überprüfung durch MS) (2)

Frage von JULIUSCC zum Thema Windows Netzwerk ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (20)

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

Exchange Server
gelöst Exchange 2010 Berechtigungen wiederherstellen (20)

Frage von semperf1delis zum Thema Exchange 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 ...