PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : HILFE !!!! Script um Dateien zu bearbeiten!!! wie ???



ulzf
07-09-2004, 08:52
Erstmal hallo leute.

ich habe folgendes Problem zu lösen:

Ausgangsituation:
ich habe zwei Datein (eine Template und eine Datei wird von einem programm erstellt)
Tempate.txt sieht so aus:
Anfang-----

Wichige Daten!!!
Wichige Daten!!!
Wichige Daten!!!
Wichige Daten!!!

##########################
#Daten müssen hier eingefügt werden#
##########################

Ende-----

die vom Programm erstellte datei.txt
sieht so aus:
Anfang-----

DATEN DATEN DATEN
DATEN DATEN DATEN
DATEN DATEN DATEN
DATEN DATEN DATEN

brauchbare Daten!!!
brauchbare Daten!!!
brauchbare Daten!!!
brauchbare Daten!!!

Ende -----
Mein Ziel ist es: die brauchbare Daten aus der Datei.txt zu extrahieren und in die Vorlage "Template" einzubinden.

es gibt die möglichkeit den kopfteil von Datei.txt zu löschen und den vom Template einzufügen.
Oder auch den Inhalt von Datei.txt in Template einzufügen (wird wahrscheinlich ewig dauern die Datei.txt zeilenweise zu lesen ca. 25000 Zeilen)

also leute ich brauch eure Hilfe... ich habe bis jetzt mit sed, awk, read und head probiert aber bis jetzt keine Lösung...
Ich hoffe daß ihr mir helfen werdet....
PS: am besten wäre eine lösung als shell script. Ein perl script wäre auch möglich.
Vielen dank im voraus....

undefined
07-09-2004, 09:09
Wenn du keine Hilfe benötigen würdest dann wäre hier wohl kein Post von dir, gelle ;) Also bitte lass dies HILFE weg das ist nicht gerade Hilfreich und nimmt nur platz weg für die Eigentliche Problembeschreibung. Ansonsten gebe mal in der Suchmaske eines Forum Hilfe ein mal sehen ob du dann dein Eigentliches Problem findest ;)

Du kannst Einzelne Zeilen einfach mit einem "cat" und "grep" Befehl finden.


cat DateiName | grep 'brauchbare Daten'

Siehe Manpages grep und egrep ;)

ulzf
07-09-2004, 09:17
Du kannst Einzelne Zeilen einfach mit einem "cat" und "grep" Befehl finden.


cat DateiName | grep 'brauchbare Daten'



ich kann grep benutzen nur wenn ich weiß was in der Zeile steht...
ist aber nicht der Fall...
wie gesagt, die brauchbare Daten werden von einem anderen Programm erzeugt (es sind Vektordaten zur Darstellung von 3D Bilder: sie ändern sich von bild zu Bild).

Das Löschen bzw. Einfügen von Zeilen ist eigentlich das Hauptproblem.

undefined
07-09-2004, 09:32
Dann wäre es wohl am besten erst einmal einen weg zu finden welche Dateien Brauchbar sind und nicht. Ich verstehe nicht ganz deine erklärung zu den vector Grafiken.
Es werden Vector Grafiken erstellt die Brauchbar sind. Welche Merkmale weisen sie auf damit sie erkennen kann?

ulzf
07-09-2004, 09:40
die bracuhbare daten sind in der form gespeichert.

DATEI-Header
mesh {

triangle {
<-28.622000, 42.735500, 203.863007>, <0.879360, 0.066484, 0.471493>,
<-30.903999, 39.097801, 208.632004>, <0.879360, 0.066484, 0.471493>,
<-27.912100, 37.941502, 203.214996>, <0.879360, 0.066484, 0.471493>
texture { BlueText } }
.
.
.

}
die DATEI-Header muss durch der von Template ersetzt werden.
also ungefähr so :

head -n 15 Template.txt > temp.txt

und dann die 15 ersten zeilen von Datei.txt durch den Inhalt von temp.txt ersetzen.

peschmae
07-09-2004, 09:48
Sind es immer 15 Zeilen?

MfG Peschmä

ulzf
07-09-2004, 09:54
Sind es immer 15 Zeilen?

MfG Peschmä

Ja .. Sie sind immer 15 aber immer verschiedene Inhalte...


vielleicht kann auch evtl. add benutzen???? oder etwa nicht...

peschmae
07-09-2004, 11:10
Und in der zweiten Datei sind es auch immer 15 Zeilen?

Heisst das du willst einfach mit den ersten 15 Zeilen aus einer Datei die ersten 15 Zeilen einer anderen überschreiben?



head -15 datei1.txt > neu.txt
tail +16 datei2.txt >> neu.txt


MfG Peschmä

ulzf
07-09-2004, 11:52
Es hat funktionniert...
vielen DANK

mfg

peschmae
07-09-2004, 13:42
*ggg*

Ich hatte nicht im Ernst gedacht dass es so einfach werden würde. Umso besser :)

MfG Peschmä

undefined
07-09-2004, 14:15
@peschmae
Dito ich war schon am überlegen das ganz mit sed zu Lösen :D