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

Skript Problem Suche nach bestimmten Textmuster in mehreren Textdateien

Frage Entwicklung Batch & Shell

Mitglied: hooligen110

hooligen110 (Level 1) - Jetzt verbinden

20.10.2014, aktualisiert 15:52 Uhr, 878 Aufrufe, 9 Kommentare, 2 Danke

Hallo liebe Community,

ich habe folgendes Problem.
Ich soll für meinen Chef ein automatisierbares Script schreiben,mit dem eingegangene .tif Dateien automatisch per OCR(Tesseract) abgelesen werden und nur ein bestimmter Inhalt(in dem Fall eine 7 stellige Zahl)
in einer gleichnamigen Textdatei ausgegeben wird.
Den ersten Teil habe ich geschafft,dass Tesseract angesprochen wird,sämtliche .tif Dateien abgelesen werden und die Textdateien = den .tif Dateien benannt werden.
Nun bekomme ich den gesamten Inhalt der jeweiligen .tif Datei in einer Zeile der Textdatei zurück.
Mitten in der Textdatei befinden sich 7 stellige Zahlen (Sendungsnummern). Mal nur eine, mal mehrere hintereinander,welche dann mit einem Blank getrennt werden.
Nun stehe ich vor dem Problem,dass ich kein Script hinbekomme(möglichst mit vbs,Batch oder Powershell), welches mir folgende Bedingungen erfüllt:

-Suche in allen Textdateien nach 7 stelligen Zahlen
-Alle 7 stelligen Zahlen müssen mit 3 beginnen
-Lösche alles andere,was keine 7 stellige Zahlenfolge ist,welche mit 3 beginnt.
-speichere alles in die Urpsrungs Textdatei.

Ich hoffe meine Beschreibung war ausführlich genug und ich hoffe auf Hilfe,da ich schon stundenlang alle möglichen Foren durchsucht habe. <-- Ohne Erfolg.

Besten Dank schonmal.

Gruß

Hooligen110 aka Angelo
Mitglied: colinardo
20.10.2014, aktualisiert um 15:57 Uhr
Hallo Angelo, Willkommen auf Administrator.de!
Mit Powershell ist das hiermit erledigt:
01.
$path = 'c:\ordner' 
02.
dir "$path\*.txt" | %{([regex]'3\d{6}').Matches((gc $_.Fullname)) | select -Expand Value | out-file $_.FullName -Force}
(-edit- korrigiert das es auch auf PS 2.0 kompatibel ist)

Grüße Uwe
Bitte warten ..
Mitglied: hooligen110
20.10.2014 um 15:12 Uhr
Hallo Uwe,

Dankeschön für deine schnelle Antwort!

Ich habe das Skript grade einmal in die ISE geladen,vorher die Ausführung für Skripts freigegeben, den Pfad angepasst,die Textdateien erzeugt..

Wenn ich das Skript jetzt allerdings ausführe,dann verändert sich logischerweise das Änderungsdatum in der jeweiligen Textdatei. Beim Öffnen der jeweiligen Textdatei musste ich feststellen,dass diese leer ist. So,als hätte das Skript alles andere runterrasiert,weil es diese Bedingungen nicht gefunden hat.
Ich darf aus Datenschutzgründen(stehen Adressen und Kunden mit auf der tif bzw. in der Textdatei),keine dieser Dateien zur Anschauung hochladen,aber,ich lade einmal eine meiner Textdateien hier in das Nachrichtenfenster und ersetze sensible Daten durch #. Ich hoffe,dann funktioniert es mit der Problemlösung etwas besser,sodass ich euch nicht im nebel stochern lassen muss.

+49##2E1###1EI43 321.89.14 11:14 ' FaX Absender +491291##3
Von SMS zum Fax - mit Empfänger +495###89#6###SMS im Festnetz erreichen _
sie mehr; Datum/Uhflelt 30.09.2014 11:14:47 Mitteilung?3491934 3491896 3491491 3491207 3490982SMS im Festnetz ist ein Service der Deutschland GmbH.Die ist nicht verantwortlich fiir den Inhalt des Faxes.Ü 1/1



FyiDer komplette Text,so wie er da steht,befindet sich in der Textdatei in einer Zeile.)
Bitte warten ..
Mitglied: colinardo
20.10.2014, aktualisiert um 15:19 Uhr
Klappt hier aber einwandfrei ... mache das ja nicht zum ersten mal
Der komplette Text,so wie er da steht,befindet sich in der Textdatei in einer Zeile
das ist dem Script egal...

  • haben deine Textdateien zufällig ein besonderes Encoding ?
  • Welche Powershell-Version verwendest du ? Falls noch v2.0 dann habe ich das Script oben noch etwas angepasst
Bitte warten ..
Mitglied: hooligen110
20.10.2014 um 15:25 Uhr
Auch mit dem angepassten Script kommt die datei "leer" raus.

° Die Dateien haben das Unicode Format,da ich sonst keine Sonderzeichen einbinden konnte.
- Ich habe es vorher mit Batch Probiert,aber genau da hat es gehakt,dass ich es nicht ausführen konnte,weil es im Unicode vorhanden ist.

° ich verwende die V.1.0
- Muss es die nächsten par Wochen über auf einem Windows XP Prof. SP3 Rechner laufen lassen,danach auf einem Win 7 Prof. 64 Bit.
Bitte warten ..
Mitglied: colinardo
20.10.2014 um 15:26 Uhr
Zitat von hooligen110:
° ich verwende die V.1.0
- Muss es die nächsten par Wochen über auf einem Windows XP Prof. SP3 Rechner laufen lassen,danach auf einem
ah ok passe es dir gleich noch an ...
Bitte warten ..
Mitglied: colinardo
LÖSUNG 20.10.2014, aktualisiert um 15:56 Uhr
das läuft problemlos auf einem XP und sonstigen ...
01.
$path = 'c:\ordner' 
02.
dir "$path\*.txt" | %{([regex]'3\d{6}').Matches((gc $_.Fullname)) | select -Expand Value | out-file $_.FullName -Force}
p.s. soll bei keinem Fund das File geleert werden, oder es so gelassen werden wie es ist?
Bitte warten ..
Mitglied: hooligen110
20.10.2014 um 15:44 Uhr
Wunderbar! ^_^ Jetzt klappts!! ) *freu*
Ich habe schon sooo lange nach einer Lösung dafür gesucht *-*


Ja, das wäre das Praktischste in meinen Augen.
Bitte warten ..
Mitglied: colinardo
LÖSUNG 20.10.2014, aktualisiert um 15:52 Uhr
Zitat von hooligen110:
Ja, das wäre das Praktischste in meinen Augen.
macht es bereits.

Wenns das dann war, den Beitrag bitte noch auf gelöst setzen. Merci.
Bitte warten ..
Mitglied: hooligen110
20.10.2014 um 15:53 Uhr
Ein riesiges DANKESCHÖN von meiner Seite aus ^_^

Ich setze es auf gelöst

Echt toll dieses Forum schnelle Lösung,freundlicher und kompetenter Umgang und macht Lust auf mehr
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Webbrowser
DNS Problem in Browsern - Suche in Adresszeile (5)

Frage von tobivan zum Thema Webbrowser ...

Linux Tools
gelöst CSV-Datei aus mehreren einzelnen Textdateien zusammenbauen in Bash (1)

Frage von Jens4ever zum Thema Linux Tools ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (33)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...

Windows Netzwerk
Windows 10 RDP geht nicht (18)

Frage von Fiasko zum Thema Windows Netzwerk ...