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, 4162 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 ..
Neuester Wissensbeitrag
Ähnliche Inhalte
JavaScript
Skript schlägt fehl - nur Zahlen werden gespeichert (3)

Frage von Ah3n0bar6us zum Thema JavaScript ...

Batch & Shell
gelöst Findstr - code für schwieriger Abfrage gesucht (9)

Frage von reissaus73 zum Thema Batch & Shell ...

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

Frage von DaTobsn zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Switche und Hubs
LAG zwischen Cisco SG300 und Dlink DGS1100 herstellen - wie? (18)

Frage von White-Rabbit2 zum Thema Switche und Hubs ...

CPU, RAM, Mainboards
Hardware Fragen (12)

Frage von xaver-2 zum Thema CPU, RAM, Mainboards ...

Grafikkarten & Monitore
Neue Graifkkarte - kein Bild (10)

Frage von bestelitt zum Thema Grafikkarten & Monitore ...

Exchange Server
gelöst Exchange 2013 - Kontakte aus CSV importieren (9)

Frage von hesper zum Thema Exchange Server ...