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 Einen definierte Anzahl Zeichen aus den Zeilen einer Textdatei entfernen

Mitglied: jabali07

jabali07 (Level 1) - Jetzt verbinden

24.10.2007, aktualisiert 25.10.2007, 10390 Aufrufe, 4 Kommentare

Moin zusammen,

vielleicht hat ja jemand von Euch eine Idee für mein Problem...

Aus einem Prozeß, auf den ich leider keinen Einfluss habe, erhalte ich täglich eine Textdatei, Namens "Checkcodes.txt".
In jeder Zeile der Textdatei muss stets das 16. bis einschließlich 23.Zeichen entfernt (ausgeschnitten) werden, um die Datei weiter verwursten zu können.

Beispielzeile:

Aus dem Prozeß kommt: (Der Zeitcode ist dummerweise immer doppelt vorhanden.)

XTLJ_ 10/02/07 12:16:40 12:16:40 12 XCOO7A2H1W.FR2


So muss es später aussehen:

XTLJ_ 10/02/07 12:16:40 12 XCOO7A2H1W.FR2


Eine aufwendige und zitterige Handarbeit, die meine Haare ergrauen läßt.

Die Anzahl der Zeilen dieser täglich neu erstellten Textdatei variiert leider immer.
Kann man da trotzdem eine Batch-Routine finden, die diese Aufgabe bewältigt?

Herzliche Grüße und vielen Dank vorab für Eure Mühe
Jabali07
Mitglied: miniversum
24.10.2007 um 12:33 Uhr
Wenn du immer genau diese anzahl an Zeichen wilslt dann versuchs mal so:
@echo off
set "infile=c:\eingangsdatei.txt"
set "outfile=c:\ausgangsdatei.txt"
FOR /F "delims=" %%l in ("%infile%") do echo %%l:~0,15%%l:~16>>"%outfile%"

Wenn das Format immer so bleibt und du dich an den Leerstellen orientieren kannst dann kannst dus so versuchen:
@echo off
set "infile=c:\eingangsdatei.txt"
set "outfile=c:\ausgangsdatei.txt"
FOR /F "tokens=1,2,3,5,6 delims= " %%a in ("%infile%") do echo %%a %%b %%c %%d %%e %%f>>"%outfile%"

miniverusm
Bitte warten ..
Mitglied: ITwissen
24.10.2007 um 13:27 Uhr
Falls das OS zufaelligerweise GNU/Linux waere, geht es so:

01.
cut -b1-15,24- < Checkcodes.txt > output.txt
Bitte warten ..
Mitglied: bastla
24.10.2007 um 21:27 Uhr
@miniversum
Da für Laufvariable die zeichenweise Zerlegung nicht vorgenommen werden kann, musst Du die eingelesene Zeile zunächst einer weiteren Variable zuweisen, was (zur Vermeidung der "delayedexpansion") in einem Unterprogramm erfolgen sollte, also etwa:
01.
@echo off & setlocal
02.
set "infile=C:\Checkcodes.txt"
03.
set "outfile=C:\Checkcodes_cut.txt"
04.
if exist "%outfile%" del "%outfile%"
05.
FOR /F "usebackq delims=" %%L in ("%infile%") do call :ProcessLine "%%L"
06.
goto :eof
07.
 
08.
:ProcessLine
09.
set "Line=%~1"
10.
(echo %Line:~0,15%%Line:~24%)>>"%outfile%"
Die Variante 2 benötigt auch noch kleinere Anpassungen:
01.
@echo off & setlocal
02.
set "infile=c:\eingangsdatei.txt"
03.
set "outfile=c:\ausgangsdatei.txt"
04.
if exist "%outfile%" del "%outfile%"
05.
FOR /F "usebackq tokens=1,2,3,5,6" %%a in ("%infile%") do (echo %%a %%b %%c %%d %%e)>>"%outfile%"
Grüße
bastla
Bitte warten ..
Mitglied: jabali07
25.10.2007 um 11:41 Uhr
@all: Herzlichen Dank für die Mühe und die prompte Hilfe an alle.

Den zweiten Vorschlag von miniverusm hatte ich mir gestern noch "zurechtgeschüttelt". Funktioniert bestens.

Die beiden 'batches' von bastla habe ich dann heute auch laufen lassen. Simply Perfekt!

Eine riesen Arbeitserleichterung für mich. Nochmals Dankeschön!

Gruß jabali07
Bitte warten ..
Ähnliche Inhalte
Outlook & Mail

EMails werden nach 3 Monaten entfern - Einstellung

Frage von staybbOutlook & Mail5 Kommentare

Hallo, ich habe bei einem Postfach das Problem, dass in Outlook alle Mails älter wie 3 Jahre verscheinden und ...

Batch & Shell

Grep Textdatei nach mehreren Strings durchsuchen je String Anzahl der Zeilen ausgeben

gelöst Frage von cuilsterBatch & Shell8 Kommentare

Hallo lieber Foristen, Folgendes konnte ich bereits erfolgreich eruieren. Grep sucht in der Datei nach "ocsp" und spuckt mir ...

Batch & Shell

Batch - Ordnerstruktur bis bestimmte Anzahl von Unterverzeichnisse auslesen und in Textdatei schreiben

gelöst Frage von 115129Batch & Shell2 Kommentare

Hallo zusammen, da ich länger nicht mehr hier im Forum war ist es längst überfällig wieder einmal eine Frage ...

Basic

Regex Anzahl Character Nicht Anzahl Bytes

gelöst Frage von PeronasBasic6 Kommentare

Guten Morgen zusammen, und zwar habe ich eine Frage bzgl. RegEx/RegExp. Ich habe einen regulären Ausdruck der wie folgt ...

Neue Wissensbeiträge
iOS
IOS hat nen Cursor !!!
Tipp von Criemo vor 2 StundeniOS

Nette Funktion im iOS. iPhone-Mauszeiger aktivieren „Nichts ist nerviger, als bei einem Tippfehler zu versuchen, den iOS-Cursor an die ...

Off Topic
Avengers 4: Endgame - Erster Trailer
Information von Frank vor 2 TagenOff Topic1 Kommentar

Ich weiß es ist Off Topic, aber ich freue mich auf diesen Film und vielleicht geht es anderen hier ...

Webbrowser
Microsoft bestätigt Edge mit Chromium-Kern
Information von Frank vor 2 TagenWebbrowser5 Kommentare

Microsoft hat nun in seinem Blog bestätigt, dass die nächste Edge Version kein EdgeHTML mehr für die Darstellung benutzen ...

Sicherheit

MikroTik: Sicherheitslücke wird ausgenutzt obwohl ein Update seit langem verfügbar ist

Information von sabines vor 2 TagenSicherheit

Obwohl ein Update, dass die nun massenhaft ausgenutzte Lücke schließt, seit langem (März 2018) verfügbar ist, wird es offensichtlich ...

Heiß diskutierte Inhalte
Exchange Server
Exchange Server 2010: Keine Eingehenden E-MAils
Frage von gabeBUExchange Server13 Kommentare

Hallo Zusammen Ich habe das kurzen auf dem Exchange 2010 Server das Problem, dass ich keine externen E-Mails mehr ...

Rechtliche Fragen
Systemhaus auf Abwegen
Frage von rocco61Rechtliche Fragen13 Kommentare

Hallo zusammen, bin derzeit ratlos bei dem folgenden Scenario: In einen Seniorenheim wurde beschlossen, die IT an eine andere ...

Router & Routing
MikroTik - Routing, Bridging, Switching
gelöst Frage von Alex29Router & Routing9 Kommentare

Hallo in die Runde, als Hobby-Admin würde ich bitte mal wieder Eure Hilfe benötigen. Seit der Umstellung auf RouterOS ...

Outlook & Mail
Kalendersync mit Android und Outlook
Frage von Stefan007Outlook & Mail8 Kommentare

Hi Leute, kennt jemand eine Möglichkeit um Termine zwischen installiertem Outlook auf dem PC und dem Kalender auf einem ...