Dateimanipulation mit VI, VIM o.ä.??

R

rollinator

Grünschnabel
Hallo,
ich hab hier Daten in einer Textdatei. Um diese Datei für meine Anwendung einlesbar zu machen, muss ich diese Datei anpassen!
Anpassen heißt, ich muss eine bestimmte Anzahl an Zeichen aus jeder Zeile löschen! Und dann zwischen die verbliebenden Zeichen ein ";" setzen?
Bisher habe ich das löschen mit "Notepad++" unter Wine gemacht (man kann dort "Makros audfzeichnen und dann abspielen... also Zeichen löschen!!!!!). Das ist aber enorm langsam!
Dann das Einfügen der ";" mit geany! geht schneller aber auch nich gerade flott?
Kann man soetwas nicht auch z.B. mit VI oder VIM machen? Oder per SH-Script? müsste doch schneller sein?
 
Eine Kombination von 'cut' und 'tr' ist vermutlich die schnellste Loesung fuer Dich.
 
hi hier
so habe ich schon mal die ersten 33 Zeichen jeder Zeile enfernen können.
mit: >> sed 's/^.\{,33\}//' data.lst > data_out.lst <<
Den Rest also ; einfügen mache ich dann noch mit "geany"!

ok konnte keine Datei anfügen! Also so sieht der Inhalt (roh) aus:

2593860 +2 1 0 0 0
2604032 +0 0 0 0 0
2614204 +0 1 0 0 0
2614204 +2 1 1 0 0
2624376 +0 0 1 0 0
2634548 +0 1 1 0 0
2634548 +2 1 0 0 0
2644720 +0 0 0 0 0
2654892 +0 1 0 0 0
2654892 +2 1 1 0 0
2665064 +0 0 1 0 0
2675236 +0 1 1 0 0
2675236 +2 1 0 0 0
2685408 +0 0 0 0 0
2695580 +0 1 0 0 0
2695580 +2 1 1 0 0
2705752 +0 0 1 0 0
2715924 +0 1 1 0 0
2715924 +2 1 0 0 0
2726096 +0 0 0 0 0
2736268 +0 1 0 0 0
2736268 +2 1 1 0 0
2746440 +0 0 1 0 0
2756612 +0 1 1 0 0
2756612 +2 1 0 0 0
2766784 +0 0 0 0 0
2776956 +0 1 0 0 0
2776956 +2 1 1 0 0
2787128 +0 0 1 0 0
2797300 +0 1 1 0 0
2797300 +2 1 0 0 0
2807472 +0 0 0 0 0
2817644 +0 1 0 0 0
2817644 +2 1 1 0 0
2827816 +0 0 1 0 0
2837988 +0 1 1 0 0
2837988 +2 1 0 0 0
2848160 +0 0 0 0 0
2858332 +0 1 0 0 0
 
so soll es dann später aussehen:
1;0;0;0
0;0;0;0
1;0;0;0
.
.
.
etc.
 
Code:
cut --output-delimiter ";" -d " " -f 3-
Wie du siehst, gibt es hier sowas tolles namens Code-Tags!
 

Ähnliche Themen

Vim GE-PACKT

Zurück
Oben