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

Variable Zahlen aus einer .TXT Datei per Batch, cmd extrahieren

Frage Entwicklung Batch & Shell

Mitglied: mariogalaxy2

mariogalaxy2 (Level 1) - Jetzt verbinden

13.06.2010, aktualisiert 13:53 Uhr, 5603 Aufrufe, 11 Kommentare, 1 Danke

Hallo, alle zusammen!

Also meine Frage ist:
Da ich leider auf dem Gebiet programmieren null Ahnung habe wollte ich euch fragen.
Also ich habe eine .txt Datei, ca. 5 MB groß. Drinnen sind viele verschiedene Wörter, Sonderzeichen und Zahlen und ganz verschieden angeordnet.
Die Zahlen schauen z.B. so aus: 013424245545 zwischen 8 und 12 Zahlen. Beginnen immer mit 01 und enden mit 0 bis 9.
Diese Zahlelreihe würde ich gerne in eine neue .txt Datei extrahieren, da ich sonst manuell wochen brauchen werde.
In der neuen .txt Datei sollen die Zahlen so ausschauen:
0122334554
0144556565
0136365677
usw.

Veleicht kann mir einer mit einer Batch Lösung weiterhelfen.

Vielen Dank!
Mitglied: Nottrott
13.06.2010 um 13:47 Uhr
Hi,

du schreibst ja, dass in der ursprünglichen Datei die Zahlen immer mit 01 beginnen. Wie kommst du dann in deiner fertigen Datei auf 02... und 05....?
Wie genau schaut die Eingangsdatei aus?
Zahlen und Text zusammen in einer Zeile, durch Leerzeichen o.ä. getrennt oder wie?
Gibt es noch andere Zahlen in der Datei, die nicht kopiert werden sollen?
Poste am besten einfach mal ein Beispiel.

Gruß
Nottrott
Bitte warten ..
Mitglied: mariogalaxy2
13.06.2010 um 14:02 Uhr
ohh, sorry mein Fehler, habs korrigiert. also so schauts in der datei aus:

xsxfssds 27 /Et:  Ê ñÎ Ì Ê Ë xÿÿÿÍ84643 affgdjdr46g [] ÿÿÿÿÿÿÿ Ê Î ./ ÿÿÿ  Ï Tõ ÿÿÿ  Ð jÞ Ò  Ñ Ó ÿÿÿ Ñ 19.05.053 233ÿÿ M”bel Boss ÿÿÿ Y Ç °É ÿ 0856755greÊ dsgets 27 /Et:  Ê ñÎ Ì Ê Ë xÿÿÿÍ 097 ddgfh55d [] ÿÿÿÿÿÿÿ Ê Î ./ ÿÿÿ  Ï Tõ ÿÿÿ  Ð jÞ Ò  Ñ Ó ÿÿÿ Ñ 19.05.05 3 234ÿÿP„ntheross ÿÿÿ Y Ç °É ÿ 014645787789tttr5. 9 ET:zu Ê ñÎ Ì Ê Ë xÿÿÿÍhrtrtr5 [] ÿÿÿÿÿÿÿ Ê Î ./ ÿÿÿ  Ï Tõ ÿÿÿ  Ð jÞ Ò  Ñ Ó ÿÿÿ Ñ 18.01.06 5 235ÿÿHollbeck× ÿÿÿ Y Ç °É ÿgre64dSchntzler 1Ù Ë  Ê ñÎ Ì Ê Ë

da wo 014645787789 steht muss extrahiert und in einer txt Datei abgelegt werden. Wie gesagt alles sehr kaotisch. Ich hoffe es ist irgendwie möglich.

Mfg.
Bitte warten ..
Mitglied: bastla
13.06.2010 um 14:34 Uhr
Hallo mariogalaxy2 und willkommen im Forum!

Das wäre eher ein Fall für VBS:
01.
Quelle = "D:\Datei.txt" 
02.
Ziel = "D:\Liste.txt" 
03.
 
04.
Set rE = New RegExp 
05.
rE.Global = True 
06.
rE.Pattern = "01\d{6,10}" 
07.
 
08.
Set fso = CreateObject("Scripting.FileSystemObject") 
09.
Set Liste = fso.CreateTextFile(Ziel) 
10.
For Each Match In rE.Execute(fso.OpenTextFile(Quelle).ReadAll) 
11.
    Liste.WriteLine Match 
12.
Next 
13.
Liste.Close
Anmerkung zum Suchbegriff ("Pattern"): Es wird nach "01" und 6 bis 10 folgenden Ziffern gesucht.

Grüße
bastla
Bitte warten ..
Mitglied: kkboy94
13.06.2010 um 14:35 Uhr
Hallo mariogalaxy2
ich kenn mich auch noch nich so aus aber ich würds jetzt mit ner for schleife und findstr machen also in etwa so
01.
for /f  %%x in (findstr /c:"01" "PfadZurDatei\Datei.txt") do echo %%x >ausgabe.txt

PS: Das ist das erste mal das ICH selbst was mit for /f mache, deswegen probiers lieber nicht aus.

Könnte mich einer der Profis berichtigen, wenn ich was falsch gemacht hab(was sicher viel ist)?

MfG Karsten
Bitte warten ..
Mitglied: kkboy94
13.06.2010 um 14:52 Uhr
[OT]
Das ist ja lustig
Vergleich mal die Zeit von deinem Post mit der von meinem ersten Post:
kkboy94 schreibt am 13.06.2010, 14:35:32 Uhr
bastla schreibt am 13.06.2010, 14:34:28 Uhr

Müsst ich dann nich nach dier stehn?
[/OT]

MfG Karsten
Bitte warten ..
Mitglied: bastla
13.06.2010 um 15:03 Uhr
@kkboy94
[OT 2]
Müsst ich dann nich nach dier stehn?
Du meinst sicherlich nicht Dich, sondern nur Deinen Kommentar ...

Wenn Du Dir den "Diskussionsverlauf" oben ansiehst, wirst Du bemerken, dass Du auf die Antwort von mariogalaxy2 (auf Nottrotts Kommentar) geantwortet hast, ich aber auf das Eröffnungsposting ...
[/OT 2]

Grüße
bastla
Bitte warten ..
Mitglied: kkboy94
13.06.2010 um 15:16 Uhr
Ja ich meine nicht mich sondern meinen Post


Nun gut, hab ich eigentlich etwas falsch gemacht bei meiner for schleife?

MfG Karsten
Bitte warten ..
Mitglied: bastla
13.06.2010 um 15:25 Uhr
Hallo kkboy94!
hab ich eigentlich etwas falsch gemacht bei meiner for schleife?
Das sollte eigentich Dein Test schon ergeben haben ...

Abgesehen von den fehlenden Apostrophen und davon, dass "findstr" zeilenorientiert arbeitet (was auf Grundlage des geposteten Beispiel-Dateiinhaltes zu interessanten Ergebnissen führen dürfte), würde in Deiner Ergebnisdatei (wegen des einzelnen ">") nur die letzte gefundene Zeile stehen ...

Kürzer (und ohne den letztgenannten Effekt), aber hier dennoch nicht geeignet, wäre
findstr /c:"01" "PfadZurDatei\Datei.txt">ausgabe.txt
(und ja, hier genügt dann auch ein einzelnes ">") ...

Grüße
bastla
Bitte warten ..
Mitglied: kkboy94
13.06.2010 um 15:29 Uhr
Naja, es war ja mal ein Versuch wert, aber egal.
Dazu bin ich wohl noch nicht geeignet mit meinen 16 Jahren^^

Danke für die Hilfe

MfG Karsten
Bitte warten ..
Mitglied: bastla
13.06.2010 um 15:35 Uhr
@kkboy94
[more OT]
Ich hätte mit 16 noch nicht mal diese Schleife zustandegebracht (ok, in den 1970ern gab's auch noch gar kein MS-DOS und schon gar nicht die cmd.exe ) ...
[/more OT]

Grüße
bastla
Bitte warten ..
Mitglied: mariogalaxy2
13.06.2010 um 17:24 Uhr
Danke an euch alle für die Hilfe!

Das mit VBS Lösung von bastla hat super funktioniert! Dankeschön!


cu.
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Batch-Variable nach Stichworten aus TXT Datei durchsuchen (3)

Frage von 126594 zum Thema Batch & Shell ...

Batch & Shell
Per Batch eine XLS-Datei in eine TXT-Datei umwandeln (5)

Frage von skiing69 zum Thema Batch & Shell ...

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
Windows Server
gelöst Benutzer lässt sich nur an einem Clientcomputer anmelden (17)

Frage von Ammann zum Thema Windows Server ...

Netzwerke
SFP Modul (miniGibic) (11)

Frage von apranet zum Thema Netzwerke ...

Batch & Shell
gelöst Gruppenzugehörigkeit von AD Usern ermitteln - die Perfektion fehlt (11)

Frage von Stefan007 zum Thema Batch & Shell ...