SED2

Post Reply
Message
Author
kiko

SED2

#1 Post by kiko »

Hallo an alle..

Mit den einfachen tests hat es mit sed (und mir) funktioniert.
Wo ich nicht weiterkomme ist bei folgender Situation:

Ich habe verschiedene Files unter dem Verzeichnis xyz/

In diesen Files kommen userid's vor.

Diese userid's sollen durch --Vorname Nachname-- ersetzt werden.

Diese Gegenüberstellung (userid;Vorname Nachname) existiert in einem File "userid.txt"

Wie komme ich zu den gewünschten Ergebnis??

Kann hier jemand helfen??

Jochen

Re: SED2

#2 Post by Jochen »

Also, sed alleine hilft Dir nicht weiter an dieser Stelle. awk (oder perl) können da mehr:<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">#!/bin/awk -f
BEGIN {
FS=";"
while ((getline < "userid.txt")> 0) {
user[<!--no-->$1<!--no-->]=$2
}
file=""
}

FNR == 1 {
if (file != "") {
close (file)
}
file = FILENAME ".new"
}

{
for (i in user) {
gsub ("\<!--no-->\<!--no--><" i "\<!--no-->\<!--no-->>", user[<!--no-->i<!--no-->])
}
print > file
}
</font><hr></pre></blockquote>Voraussetzungen: userid.txt hat pro Zeile 2 Spalten, getrennt durch exakt ein Semikolon. Ergebnis: Überall, wo im Text eine UID als Wort auftaucht, wird sie ersetzt durch "Vorname Nachname"; die so neu erzeugten Dateien heissen "originalname.new"!

Hilft das weiter?

Jochen

kiko

Re: SED2

#3 Post by kiko »

und wie das hilft!

Danke Jochen :o)

Post Reply