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, 7675 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 ..
Ähnliche Inhalte
Windows 7
gelöst Windows 7 assembly ist ca. 35GB groß (5)

Frage von OhnePlanAmWerk zum Thema Windows 7 ...

Batch & Shell
gelöst Batch für File extension überprüfung und listenerstellungmit Zeit und Datum (2)

Frage von watch123 zum Thema Batch & Shell ...

Datenbanken
Phpmyadmin export maximal 50kb groß (4)

Frage von Leo-le zum Thema Datenbanken ...

C und C++
gelöst Cmake "Could NOT find Boost" library unter Windows (2)

Frage von Aicher1998 zum Thema C und C ...

Neue Wissensbeiträge
Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(8)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Windows 10

Das Windows 10 Creators Update ist auf dem Weg

(6)

Anleitung von BassFishFox zum Thema Windows 10 ...

Heiß diskutierte Inhalte