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 Textdokument per BATCH-Datei trennen

Mitglied: sYntaX

sYntaX (Level 1) - Jetzt verbinden

29.03.2006, aktualisiert 05.04.2006, 13325 Aufrufe, 5 Kommentare

Textdokument per BATCH-Datei trennen

Hallo,
ich bräuchte eine kleine Hilfe zum thema BATCH-Datei. Ich muss eine Textdatei in mehrere Dateien aufsplitten.
Meine textdokument sieht ungefähr so aus:

Anfang1 Datum_Zeit_ID
ID: DATEINAME.DAT
DATA DATA DATA DATA DATA
DATA DATA DATA DATA DATA
DATA DATA DATA DATA DATA
DATA DATA DATA DATA DATA
Ende1_Zeichenkette
Anfang2 Datum_Zeit_ID
ID: DATEINAME.DAT
DATA DATA DATA DATA DATA
DATA DATA DATA DATA DATA
DATA DATA DATA DATA DATA
DATA DATA DATA DATA DATA
Ende2_Zeichenkette
usw..... bis ca. 20

Meine Batchdatei soll nun von Anfang1 bis Ende1 jede Zeile in eine neue Textdatei schreiben.
Sobald man bei Ende1 angekommen ist, soll er die neu erstellte datei schließen und mit dem Dateinamen
der unter ID: steht abspeichern. Dannach soll er weitermachen (von Anfang2 bis Ende2...)
Es können mehr als 2 Dateien in einer stehen. Desshalb muss ich Sie auftrennen um an die
"ursprünglichen" Dateien mit dem richtigen Dateinamen (der unter ID: steht) zu kommen.
Das eigentliche auslesen der einzelnen zeilen konnte ich mit FOR/F realisieren.
Aber wie kann ich meiner Batchdatei sagen das er nach Ende1 eine neue Datei erstellen soll
(mit Inhalt von Anfang2-Ende2...usw.)

Ich hoffe Ihr könnt mir ein wenig helfen. Ich erwarte keine komplette Batchdatei als Hilfe,
nur einen kleinen Lösungsansatz;D

Ich danke euch

mfg
sYntaX
Mitglied: docsam
29.03.2006 um 13:55 Uhr
mit FOR kannst Du eine Datei zeilenweise auslesen.
Schau Dir mal die Hilfe mit for /? an.

Eine direkte Lösung hab ich jetzt nicht parrat.
Bitte warten ..
Mitglied: sYntaX
29.03.2006 um 17:13 Uhr
Danke, aber das auslesen der einzelnen zeilen stellt ja kein problem dar.
Das ist mit FOR /F realisiert. den Dateinamen kann ich auch herrausfiltern.
Das Problem besteht darin das er am ende des ersten ausgelesenen
Datei-Teils eine neue Datei mit dem nächsten Dateinamen erstellen muss...

Oder besteht die Möglichkeit bestimmte zeilen aus einer Datei zu löschen? Mittels
einer Batchdatei meine ich natürlich?!!

Über weitere hilfen wäre ich sehr sehr dankbar....

mfg
sYntaX
Bitte warten ..
Mitglied: Biber
29.03.2006 um 19:04 Uhr
Moin sYntaX,

wir hatten in "Batch & Shell" schon mal eine recht ähnliche Herausforderung hier Logfile letzten Zeilen in Txt File mit Batch

Ich denke, da sind ein paar Strategien drin - sonst poste bitte noch mal.

Gruß
Biber

P.S. Öhm...ist es denn sinnvoll, diese "große" Datei DAUERHAFT in "Tages"-Dateien oder was auch immer das Kriterium sein mag zu splitten?
Du könntest den Batch doch auch so konzipieren, dass er mit der Syntax "ExtractFromTxt AnfangsKrit [EndeKriterium]" arbeitet? Und erst dann, wenn einer fragt, die Daten vom 27.9. extrahiert auf Bildschirm oder Datei?
Bitte warten ..
Mitglied: sYntaX
30.03.2006 um 09:51 Uhr
Danke schon mal für die Antwort. Ich werde mich wenn ich gleich Zeit habe mal
mit der anderen herrausforderung beschäftigen. Vielleicht kann ich da ja ein paar
Tricks für mich rausholen;D

Zu deiner frage:
Wir bekommen diese Dateien so zugeschickt.Lässt sich leider net ändern
Zu weiteren Bearbeitung muss diese Datei in die einzelnen Dateien gesplittet werden.
Das Ursprungsfile ist Quasi nur ein DateiContainer der einzelne Dateien enthält
(und Ihren ursprünglichen Dateinamen)
die durch einen bestimmten header voneinander getrennt sind.
mir ist grad mal ne Idee gekommen. Wenn ich eine Lösung für mein problem gefunden habe
werde ich es mal posten.

merci&Cya
sYntaX
Bitte warten ..
Mitglied: sYntaX
05.04.2006 um 10:05 Uhr
Also ich habe mein Problem mit dem einen oder anderen Umweg gelöst.
Es ist wahrscheinlich nicht die sauberste Lösung für das Problem, aber eine definitiv funktionierende:

@echo off & setlocal EnableDelayedExpansion
set dname=
echo Bitte geben Sie den Dateinamen ein:
echo.
set /P dname=
set counter=0
set anzahl=0
for /F "tokens=1* delims=" %%a IN (%dname%) DO (
echo %%a >> !counter!.txt
echo %%a >> temp.tmp
for /F "tokens=1,2* delims=+" %%i IN (temp.tmp) DO (
if %%i=='UNZ (
echo !anzahl!.txt >> anzahl.tmp
set /a counter=counter+1
set /a anzahl=anzahl+1
)
del temp.tmp
)
)
set /a anzahl=anzahl-1
for /F %%y IN (anzahl.tmp) DO (
for /F "tokens=1,2*" %%m IN (%%y) DO (
if %%m==ID: (
rename %%y %%n
)
)
)
del anzahl.tmp
endlocal
cls
Echo Folgende Dateien wurden erstellt:
Echo.
dir /B *.DAT




Wenn es jemanden interessiert würde ich die einzelnen zeilen auch kommentieren.
jetzt muss ich aber erst mal auf der Arbeit meine 7 Sachen packen.
ein Abteilungswechsel steht an;D

mfg
sYntaX
Bitte warten ..
Ähnliche Inhalte
HTML
Textdokument in HTML einbauen
gelöst Frage von deinernstjetztHTML2 Kommentare

Hallo, ich möchte in HTML ein Textdokument für zb. AGB's einbauen. Das sollte in einem ca 200x200px Feld angezeigt ...

Batch & Shell
Zeilen aus Textdokument kopieren
gelöst Frage von stridingBatch & Shell6 Kommentare

Hallo Administrator-Community! Ich stehe mal wieder vor einer, für mich, komplizierten Aufgabe, und bestimmt kann mir auch diesmal jemand ...

SAN, NAS, DAS

ISCSI trennen und wieder verbinden per Batch

Frage von schrodtiSAN, NAS, DAS1 Kommentar

Hallo Zusammen, gibt es eine Möglichkeit ein gemapptes iSCSI Target, welches über den MS iSCSI Initiator eingebunden ist, per ...

XML

Adresse in xml Datei durch xsl Datei trennen mit substring

gelöst Frage von usenussiXML2 Kommentare

Ich versuche hier verzweifelt eine Adresse in einer Muster.xml Datei nach dem Leerzeichen zu trennen. In der test.xsl Datei ...

Neue Wissensbeiträge
Windows 10
Zero-Day-Lücke in Microsoft Edge
Information von kgborn vor 14 StundenWindows 10

In Microsofts Edge-Browser klafft wohl eine nicht geschlossene (0-Day) Sicherheitslücke im Just In Time Compiler (JIT Compiler) für Javascript. ...

Sicherheit
Microsoft und Skype: Sicherheit
Information von kgborn vor 14 StundenSicherheit

Die Tage gab es ja einige Berichte zur Sicherheit des Skype-Updaters. Der Updater von Skype läuft unter dem Konto ...

Datenschutz

Behörden ignorieren Sicherheitsbedenken gegenüber Windows 10

Information von Penny.Cilin vor 1 TagDatenschutz8 Kommentare

Hallo, passend zum Thema Ablösung LIMUX in München ein Beitrag bei Heise (siehe Link folgend). Behörden ignorieren Sicherheitsbedenken gegenüber ...

Sicherheit
Information Security Hub Munich airport
Information von brammer vor 1 TagSicherheit

Hallo, Neues Center für Cyber Kriminalität am Münchener Flughafen brammer

Heiß diskutierte Inhalte
Exchange Server
Exchange Postfach Einbindung Betriebs-rat -Arzt, Bewerbung .
gelöst Frage von YellowcakeExchange Server23 Kommentare

Hey ich habe da mal eine Denksport Aufgabe bekommen Genutzt wird ein Exchange Server 2010. hier gibt es den ...

Windows Server
Downgrade von Windows Server 2016 auf 2012 - Wie vorgehen?
Frage von EstefaniaWindows Server13 Kommentare

Guten Ich habe eine Frage an Erfahrene unter euch. Durch einen InPlace Upgrade wurde Windows Server 2012 auf die ...

Datenschutz
Telematikinfrastruktur Erfahrungsaustausch
Frage von MOS6581Datenschutz12 Kommentare

Moin, unter meinen Kunden befinden sich auch einige Ärzte, welche sich künftig mit der Telematikinfrastruktur-Geschichte der Gematik herumärgern dürfen. ...

Windows Server
Delgegierte OU via RDP verwalten - Objektverwaltung zuweisen
gelöst Frage von TOAOICEWindows Server12 Kommentare

Hallo, ich habe folgendes Problem. Ich möchte in meiner Domäne (Server2016), einer Gruppe (OUAdmin) Berechtigungen auf die OU Test ...