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, 7684 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
Batch & Shell
Script, Groß- in Kleinschreibung für vordefinierte Ordner (7)

Frage von d4shoerncheN zum Thema Batch & Shell ...

Festplatten, SSD, Raid
CloneZilla Mac HDD - Unable to find target Partition (5)

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

Exchange Server
Exchange 2010 (SBS) Öffentlicher Ordner DB zu viel zu groß (6)

Frage von krake79 zum Thema Exchange Server ...

Windows 7
gelöst Windows 7 assembly ist ca. 35GB groß (5)

Frage von OhnePlanAmWerk zum Thema Windows 7 ...

Neue Wissensbeiträge
Batch & Shell

Batch - ein paar Basics die man kennen sollte

Tipp von Pedant zum Thema Batch & Shell ...

Microsoft

Restrictor: Profi-Schutz für jedes Window

(6)

Tipp von AlFalcone zum Thema Microsoft ...

Batch & Shell

Batch zum Zurücksetzen eines lokalen Profils

Tipp von Mr.Error zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Microsoft Office
Saubere HTML aus Word-Dokument (16)

Frage von peterpa zum Thema Microsoft Office ...

Router & Routing
ASUS RT-N18U mit VPN Client hinter Fritzbox - Portforwarding (15)

Frage von marshall75000 zum Thema Router & Routing ...

Hosting & Housing
gelöst Webserver bei WIX, aber DNS Server wo anders (9)

Frage von laster zum Thema Hosting & Housing ...

Debian
gelöst Plesk php-fpm Fehler (7)

Frage von sebastian2608 zum Thema Debian ...