Dieser Beitrag ist schon älter. Bitte vergewissern Sie sich, dass die Rahmenbedingungen oder der enthaltene Lösungsvorschlag noch dem aktuellen Stand der Technik entspricht.

Spalten in einer Textdatei verschieben

Mitglied: RichardB
Hallo Forum,

ich habe lange gesucht und "herumexperimentiert"...leider hat es nicht geklappt.
Ich habe folgendes vor:
Eine Textdatei die wie folgt aufgebaut ist soll umgestellt werden in eine neue Datei.
Dabei darf die Stellenanzahl (also der Aufbau) nicht verändert werden.
Es soll also der Text ab der Stelle 74-87 ausgeschnitten und an Stelle 15 eingefügt werden.

Die Punkte sollen die Blanks darstellen (irgendwie schaut der fertige Thread anders aus als in der Entwurfsmaske???). Die Stellenzahl jeder Zeile ist gleich.
Ich hoffe ich konnte einigermassen rüberbringen was ich machen möcht...hier noch ein Beispiel...


Original

STRF-COMP020...C960000-0000..................00000044567......KAPPN.....Marinath.....
SWIP-127259.....C3320226-02...................00000034567......SCHEE.....Ersatz Glass.
SWIP-125424.....C3322400-01...................00000014567......SCHEE..................
SWIP-125424.....C340349.......................00000024567......SCHEE..................

usw.

Gewünschtes Ergebniss

STRF-COMP-020.Marinath.......C960000-0000..................00000044567......KAPPN.....
SWIP-127259...Ersatz Glass...C3320226-02...................00000034567......SCHEE.....
SWIP-125424..................C3322400-01...................00000014567......SCHEE.....

usw...

wie lässt sich oder lässt sich soetwas überhaupt per Batch lösen???

Gruss und DANKE

Richard

Content-Key: 101791

Url: https://administrator.de/contentid/101791

Ausgedruckt am: 04.08.2021 um 02:08 Uhr

Mitglied: D3S3RT
D3S3RT 13.11.2008 um 22:14:07 Uhr
Goto Top
ganz billig für einmalig machen würd mir jetzt einfallen:

pack das in excel rein und sag, Text in Spalten, da kannste mit den Strichen die Bereiche angeben. Dann die Spalten umsortieren per Drag&Drop. und dann speichern als Txt. Das müsste zumindestens funktionieren.
Mitglied: bastla
bastla 13.11.2008 um 22:23:49 Uhr
Goto Top
... und falls Du es doch öfter brauchen solltest, dann etwa so:
Grüße
bastla
Mitglied: RichardB
RichardB 16.11.2008 um 20:13:47 Uhr
Goto Top
:-) face-smile Klasse...das ganze kommt dem was ich vorhabe schon sehr nahe! Danke Bastla

Leider habe ich in der ersten Zeile eine unerwünschte "Verschiebung".

Ich habe mir mit echo %Zeile" den Inhalt der Variable Zeile ausgeben lassen. Dabei habe ich festgestellt dass vor dem eigentlichen Text zwei Sonderzeichen ("90 Grad Winkel einfach und doppelt") ausgegeben werden?? Keine Ahnung wo die herkommen in der Original Datei sind Sie jedenfalls nicht?
Dadurch verschiebt sich eben die Ausgabe um zwei stellen (die "20").

Gruss
Richard
Mitglied: bastla
bastla 16.11.2008 um 20:24:47 Uhr
Goto Top
Hallo RichardB!

Eine Anpassung der Zeile 10 sollte das ja "abfangen" können, etwa:
Zur Bildung von "Substrings" (kannst Du auch unter "set /?" nachlesen) ist zunächst die Anzahl der "zu überspringenden" Zeichen und danach die Anzahl der zu verwendenden Zeichen anzugeben - mit
werden demnach die ersten beiden Zeichen übersprungen und die folgenden 14 Zeichen verwendet. Wenn der zweite Wert nicht angegeben wird, bedeutet dies: "nimm alle restlichen Zeichen bis zum Ende".

Grüße
bastla
Mitglied: RichardB
RichardB 16.11.2008 um 20:40:27 Uhr
Goto Top
hmmm...diese "Sonderzeichen sind ja nur in der ersten
Zeile...und wenn ich das ganze so durchlaufen lasse dann erhalte ich vor der ersten Zeile im Ergebniss ein umgedrehtes Fragezeichen...

...noch ne Idee??

Gruss
Richard
Mitglied: RichardB
RichardB 16.11.2008 um 21:09:20 Uhr
Goto Top
...gearde ist mir noch aufgefallen dass es wohl mit Umlauten auch zu Problemen (Verschiebungen) kommt.

Kann/Muss man evtl. einen Zeichensatz festlegen???
Mitglied: bastla
bastla 16.11.2008 um 21:22:41 Uhr
Goto Top
Hallo RichardB!

Na gut, dann setzen wir vorübergehend die Codepage auf 1252 und erteilen der 1. Zeile eine Sonderbehandlung (wobei Du die Positionen eben so anpassen musst, dass die richtigen Zeichen ausgegeben werden - "blind" kann ich das leider nicht):
Grüße
bastla
Mitglied: RichardB
RichardB 16.11.2008 um 21:53:09 Uhr
Goto Top
Hallo bastla,

danke erstmal für die Mühe!

Inzischen habe ich etwas rumprobiert...wenn ich die Originaldatei in ANSI umwandle (original ist UTF-8)dann klappt es...

Jetzt muss ich nur noch rausfinden wie das ganze per Batch geht...

Echt klasse
Gruss
Richard
Mitglied: bastla
bastla 16.11.2008 um 21:57:59 Uhr
Goto Top
Hallo RichardB!

Du könntest folgendes versuchen:
Grüße
bastla
Mitglied: RichardB
RichardB 17.11.2008 um 00:07:29 Uhr
Goto Top
...das klappt!

Nur jetzt habe ich das nächste Problem...
Das Programm mit dem ich die veränderte Datei einlese erwartet nach der Konvertierung ANSI-Codierung...
Ich werd Wahnsinnig. Es will mir nicht gelinegn die Datei in ANSI auszugeben...auch Tante Google gibt da nix brauchbares her...

Danke für Deine Hilfe, bastla!

Gruss
Richard
Mitglied: bastla
bastla 17.11.2008 um 07:50:38 Uhr
Goto Top
Hallo RichardB!

Du könntest noch die Kombination
versuchen ...

Grüße
bastla
Heiß diskutierte Beiträge
question
Backup-Konzept für HeimgebrauchmossoxVor 1 TagFrageBackup13 Kommentare

Guten Tag zusammen, ich bin mir nicht sicher, ob ich das richtige Unterforum gewählt habe, denn meine Frage berührt auch den Bereich Hardware und Netzwerke. ...

question
Günstiges Open-Source NAS für HeimgebrauchpanguuVor 1 TagFrageSAN, NAS, DAS10 Kommentare

Hallo, mit NAS-Systemen hatte ich bisher gearbeitet: Synology, QNAP, Buffalo, etc. Dabei kommen proprietäre Betriebssysteme zum Einsatz, die sich natürlich von Hersteller zu Hersteller unterscheiden ...

question
Domains, die mir gehören gelöst IT-EinsteigerVor 1 TagFrageInternet Domänen5 Kommentare

Hi, Ich habe verschiedene Domain, bei verschiedenen Hostern. Da ich hier und da nur eine Domain gekauft habe, um den Hoster zu testen, habe ich ...

question
Ipv6 RouterliodiceVor 1 TagFrageDSL, VDSL10 Kommentare

Hallo zusammen, ich hoffe ihr könnt mir weiterhelfen, ich benötigen einen ADSL Router (Kabelgebundenen) der IPv4 und IPv6 kann, also Dual Stack (DHCP Extern und ...

question
PC geht ohne Vorwarnung aus und fährt wieder hochWasserstrahlbiegezangeVor 1 TagFrageHardware14 Kommentare

Hi, vor einiger Zeit hat mein PC angefangen sich merkwürdig zu verhalten. Er stürzte einfach ab, ging dabei teilweise ohne Vorwarnung aus, und fuhr wieder ...

question
Server 2019 std. auf deutsch umstellenBender999Vor 11 StundenFrageWindows Server19 Kommentare

Hallo, kann mir einer erklären wie um alles in der Welt ich meinen Server 2019 std. auf deutsch umstellen kann? ...

question
Prozess bzw. Programm zu Verbindung auf IP herausfinden gelöst dcmindenVor 1 TagFrageWindows Netzwerk8 Kommentare

Wir bekommen bei diversen Kunden regelmäßig (alle 6 - 8 Tage) Alarmmeldungen von der Firewall zu einer geblockten Verbindung zu 68.183.140.225 Port 443. Jetzt möchten ...

question
Textdatei anhand xy-Koordinaten auslesen gelöst LeaX55Vor 1 TagFrageBatch & Shell11 Kommentare

Hallo Gemeinde, gibt es in Powershell eine Möglichkeit ein Text/Zahl aus einer Textdatei auszulesen anhand xy-Koordinaten? Als Beispiel habe ich eine Textdatei, aus der ich ...