Top-Themen

Aktuelle Themen (A bis Z)

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 Zahlen aus Textdatei auslesen und exportieren

Mitglied: infowars

infowars (Level 2) - Jetzt verbinden

27.11.2013, aktualisiert 18:05 Uhr, 1352 Aufrufe, 7 Kommentare

Moin,
ich möchte aus einer Textdatei Zahlen auslesen und diese in eine andere Datei exportieren.
Das Problem daran ist folgendes:
Die Zahlen der Textdatei liegen zum Teil so vor :

#Kommentar
die zahl 1.2
#Kommentar
die zahl 2.3.4
#Kommentar
die Zahl 3.4.5
#Kommentar
die Zahl 4.5
#Kommentar
usw.

und sollen dann in dieses Format gebracht werden, mit einer 1 und einem Leerzeichen, gefolgt von den Zahlen :

1 1.2.0.0 1.2.255.255
1 2.3.4.0 2.3.4.255
1 3.4.5.0 3.4.5.255
1 4.5.0.0 4.5.255.255

Das lässt sich doch bestimmt mit einer Batch oder so lösen.
Möglicherweise über einen Export in eine Tabelle ?
Leider bin ich kein Batch-Guru, kann mir einer auf die Sprünge helfen ?
MfG
Mitglied: bastla
27.11.2013, aktualisiert um 13:30 Uhr
Hallo infowars!

Auf die Schnelle (und relativ "dirty" ) etwa so:
01.
@echo off & setlocal
02.
set "Quelle=D:\TextMitZahlen.txt"
03.
set "Ziel=D:\NurZahlen.txt"
04.

05.
del "%Ziel%" 2>nul
06.
for /f "delims=" %%i in ('findstr /bv "#" "%Quelle%"') do call :ProcessLine "%%i"
07.
goto :eof
08.

09.
:ProcessLine
10.
for %%a in (%~1) do set "Zahl=%%a"
11.
for /f "tokens=1-3 delims=." %%a in ("%Zahl%") do (
12.
    if "%%c" neq "" (
13.
        >>"%Ziel%" echo 1 %%a.%%b.%%c.0.%%a.%%b.%%c.255
14.
    ) else (
15.
        if "%%b" neq "" (
16.
            >>"%Ziel%" echo 1 %%a.%%b.0.0.%%a.%%b.255.255
17.
        ) else (
18.
                >>"%Ziel%" echo 1 %%a.0.0.0.%%a.255.255.255
19.
        )
20.
    )
21.
)
22.
goto :eof
Grüße
bastla
Bitte warten ..
Mitglied: Endoro
27.11.2013, aktualisiert um 13:45 Uhr
Hey, noch ne Lösung:
01.
@ECHO OFF &SETLOCAL
02.
(for /f "eol=#delims=" %%a in (file) do (
03.
	set "line=%%a"
04.
	SETLOCAL ENABLEDELAYEDEXPANSION
05.
	set "line=!line:.=,!"
06.
	for %%b in (!line!) do (
07.
		echo(%%b|findstr /br "[0-9][0-9]*" >nul&& (
08.
			set "part1=!part1!%%b."
09.
			set /a cnt+=1
10.
		)
11.
	)
12.
	set "part2=!part1!"
13.
	for /l %%b in (!cnt!, 1, 3) do set "part1=!part1!0."&set "part2=!part2!255."
14.
	echo(1 !part1:~0,-1! !part2:~0,-1!
15.
	endlocal
16.
))>file.new
17.
type file.new
18.
lg.
Bitte warten ..
Mitglied: infowars
27.11.2013 um 13:49 Uhr
Danke, ich werds heute abend gleich mal testen.
MfG
Bitte warten ..
Mitglied: infowars
27.11.2013, aktualisiert um 18:07 Uhr
@bastla
Bei deiner Batch werden die Zahlen nicht durch ein Leerzeichen getrennt, sondern durch einenPunkt, aber die Batch läuft durch wie sie soll:
Also von:
#Kommentar
1.2.3
zu
1 1.2.3.0.1.2.3.255

@Endoro
Super, läuft durch.

Nur habe ich bei beiden Varianten noch ein Leerzeichen hinter den formatierten Zahlen
Thx a lot
MfG
Bitte warten ..
Mitglied: bastla
27.11.2013 um 18:13 Uhr
Hallo infowars!
Bei deiner Batch werden die Zahlen nicht durch ein Leerzeichen getrennt, sondern durch einenPunkt
So sah doch auch Deine Vorgabe aus ...
Nur habe ich bei beiden Varianten noch ein Leerzeichen hinter den formatierten Zahlen
Schau mal, ob in den Zeile 13, 16 und 18 bei meinem Ansatz (dort kannst Du bei Bedarf auch die Punkte durch Leerzeichen ersetzen) bzw 14 bei Endoro dieses Leerzeichen am Ende zu finden ist.

Grüße
bastla
Bitte warten ..
Mitglied: infowars
27.11.2013 um 18:39 Uhr
Sorry, hab mich falsch ausgedrückt, ich meine es sieht so aus statt so:

1 1.2.0.0.1.2.255.255
1 1.2.0.0 1.2.255.255

Dass mit den Leerzeichen werde ich schon hinkriegen.
Passt alles, danke !
MfG
Bitte warten ..
Mitglied: bastla
27.11.2013 um 18:48 Uhr
Hallo infowars!

Und ich habe das Leerzeichen zwischendurch übersehen - auch sorry

Ersetze den Punkt nach der jeweils letzten 0 in den oben genannten Zeilen durch ein Leerzeichen.

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Neueste oder mit höchster fortlaufender Zahl am Dateiende mit gleichem Anfang aus Textdatei kopieren

gelöst Frage von lanazyBatch & Shell2 Kommentare

Hallo zusammen, wir müssen bestimmte Dateien per Script kopieren. Welche Dateien das sind, kommen aus einer Textdatei, die wir ...

Datenbanken

MSSQL Text in Zahl umwandeln

gelöst Frage von EricAG3Datenbanken1 Kommentar

Hallo zusammen, folgende Tabelle sei gegeben. Menge 5,5 2,5 - 2,5 Das Feld Menge ist vom varchar. Ich möchte ...

Windows 8

Textdatei umformatieren

gelöst Frage von bladeyyyWindows 81 Kommentar

Hey, Ich habe folgendes Problem: Ein Programm exportiert bei mir eine Textdatei in dem Format: erste Zeile mit unnötigem ...

C und C++

C Sharp. jede zweite Zahl einlesen

gelöst Frage von Doktore1C und C++4 Kommentare

Hallo liebe Gemeinde. Ich möchte gerne mit einer Schleife eine Zeile einlesen. Danach jede zweite Position ausgeben. Als delimiter ...

Neue Wissensbeiträge
Windows 10

Windows 10 - Programme laufen schneller, wenn Sie mit Administratorrechten ausgeführt werden

Erfahrungsbericht von 1Werner1 vor 1 TagWindows 1011 Kommentare

Moin, das wollte ich erst nicht glauben, aber es ist so. Wenn Ihr ein Programm mit Administratorrechten unter Windows ...

Sicherheits-Tools
Putty hat heftige Bugs korrigiert!
Information von Lochkartenstanzer vor 2 TagenSicherheits-Tools5 Kommentare

Moin, Wie man aus herauslesen kann, sind in den Versionen vor 0.71 gravierende Bugs, die es angeraten erscheinen lassen, ...

Off Topic
Sachen die die Welt nicht braucht - Platz 1
Tipp von brammer vor 5 TagenOff Topic21 Kommentare

Hallo, ich habs als Tipp angelegt als Erfahrungsbericht nein Danke brammer

Humor (lol)
Spirit of Health-Kongress in Berlin
Information von AnkhMorpork vor 5 TagenHumor (lol)6 Kommentare

tgif! Beim dritten Spirit of Health-Kongress trafen sich am Wochenende Alternativmediziner und Naturheilkundler im Maritim Hotel Berlin, um sich ...

Heiß diskutierte Inhalte
Hardware
Telefonanlagen - Welche gibt es
Frage von Xaero1982Hardware26 Kommentare

Nabend Zusammen, ich suche eine neue TK Anlage und mein Auftraggeber will jetzt was völlig neues - State of ...

Outlook & Mail
Office 365 mit Email-Profil installieren
Frage von Carat2121Outlook & Mail18 Kommentare

Hallo, kurz zu meiner Person: Vor ungefahr 10 Jahren habe ich eine Umschuldung zum Fachinformatiker für Systemintegration gemacht aber ...

LAN, WAN, Wireless
Intel(R) PRO Wireless 3945ABG
gelöst Frage von Leon509LAN, WAN, Wireless15 Kommentare

Hallo, habe ein Laptop Fujitsu (Intel, 4GB, 2GHz, Windos10, Intel(R) PRO/Wireless 3945ABG ) ein O2 DSL Anschluss Home50. Leider ...

Hardware
Empfehlung zu neuen Desktop Pcs innerhalb KMU
Frage von Leo-leHardware13 Kommentare

Hallo zusammen, vielleicht könnt Ihr, anhand Eurer Erfahrung, mir einen Tipp zur Bestellung neuer Desktop Pcs für unsere User ...