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

findstr Zahlen 0-7

Frage Entwicklung Batch & Shell

Mitglied: Speedesel

Speedesel (Level 1) - Jetzt verbinden

20.02.2008, aktualisiert 03.03.2008, 4198 Aufrufe, 5 Kommentare

Hallo zusammen,

ich habe folgendes Problem. Ich möchte eine txt-Datei auswerten und wenn der Wert zwischen 0-7 liegt eine neue txt-Datei mit ok anlegen. Die Txt-Dateien die auszuwerten sind, haben einen Wert von
0-59! Mehr nicht! Komme einfach nicht mit findstr weiter! Kann mir bitte jemand helfen.

Danke und Grüße

Björn
Mitglied: Biber
20.02.2008 um 20:50 Uhr
Moin Speedesel,

wäre es nicht eventuell einfacher, diese Werte mit einer FOR/F-Anweisung auszulesen?
Beispiel (für den Test am CMD-Prompt):
01.
for /f %i in (datei.txt) do @if %i LEQ 7 (@echo %i ist kleiner gleich 7)
Biber
Bitte warten ..
Mitglied: bastla
20.02.2008 um 21:35 Uhr
Hallo Speedesel!

So ganz klar ist mir zwar nicht, was Du mit "txt-Datei auswerten" meinst, aber wenn es unbedingt "findstr" sein soll, wäre der Suchstring "[0-7]", also etwa:
01.
findstr [0-7] Text.txt>nul && echo ok>Neue.txt
Damit würde "ok" geschrieben werden, wenn in irgendeiner Zeile der Datei "Text.txt" eine Ziffer zwischen 0 und 7 vorkommt - oder was genau möchtest Du untersuchen?

Grüße
bastla
Bitte warten ..
Mitglied: Speedesel
21.02.2008 um 13:17 Uhr
Der erste Versuch von Biber hat schon den Nagel auf dem Kopf getroffen! Jetzt muss ich das ganze nur als Batchdatei hinbekommen! Aus der Dos-Box läuft es perfekt! Kann mir dort auch jemadn auf die Sprünge helfen?
Bitte warten ..
Mitglied: Biber
25.02.2008 um 18:28 Uhr
Moin speedesel,

sorry, habe Deine Antwort erst jetzt wahrgenommen...

Um vom einer am CMD-Prompt funktionierenden FOR-Anweisung zu einer funktionierenden FOR-Anweisung im Batch zu kommen, müssen eigentlich nur die Prozentzeichen der Laufvariablen (%i, %j, ....) verdoppelt werden zu %%i, %%j etc.

also wird aus CMD-Prompt-FOR-Anweisung
01.
for /f %i in (datei.txt) do @if %i LEQ 7 (@echo %i ist kleiner gleich 7)
...die Batch-Version...
01.
@for /f %%i in (datei.txt) do @if %%i LEQ 7 (@echo %%i ist kleiner gleich 7)
... oder, etwas realistischer in einem etwas längeren Batch

01.
:: ---- derGanze.bat 
02.
@echo off & setlocal 
03.
:: ..... ggf. Variablen setzen, Parameter prüfen... 
04.
 
05.
:: die ganzen "@" brauchen wir nicht mehr.... Echo ist off 
06.
for /f %%i in (datei.txt) do if %%i LEQ 7 goto :InhaltKleiner7 
07.
:HierIstInhalt8oderMehr 
08.
:: .... ggf. Anweisung für diesen Fall 
09.
 
10.
goto :eof 
11.
~~~~~~~~ 
12.
:InhaltKleiner7 
13.
:: ....  Anweisungen für diesen Fall 
14.
 
15.
goto :eof
Grüße
Biber
Bitte warten ..
Mitglied: Biber
03.03.2008 um 06:50 Uhr
Moin Speedesel,

kann ein Haken dran?

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Linux
gelöst E-Mail Adressen zählen (2)

Frage von plutowitsch zum Thema Linux ...

Batch & Shell
gelöst Mal eine neue Art von Abfrage mit findstr (8)

Frage von DaTobsn zum Thema Batch & Shell ...

Linux
gelöst Umlaute zählen - Bash-Script (5)

Frage von plutowitsch zum Thema Linux ...

Batch & Shell
Dateien in einen Ordner zählen mit einer bestimmten Dateiendung (4)

Frage von tommhii zum Thema Batch & Shell ...

Neue Wissensbeiträge
Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Windows 10

Windows 10: Erste Anmeldung Animation deaktivieren

(3)

Anleitung von alemanne21 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Router & Routing
gelöst Linksys wrt1200ac v2 mit dd-wrt: keine vlan-einstellungen im GUI (15)

Frage von Pixi123 zum Thema Router & Routing ...

E-Business
Wo tragt ihr eure privaten Termine ein? (13)

Frage von honeybee zum Thema E-Business ...

Entwicklung
gelöst Tipp für Anfänger- Wie würdet ihr automatischen Mailversand umsetzen? (12)

Frage von Cloudyme zum Thema Entwicklung ...

Windows Server
Terminalserver starten willkürlich neu (12)

Frage von thaefliger zum Thema Windows Server ...