sed satz ersetzen

T

tiptel170

Tripel-As
Guten morgen,

mal ne doofe frage, wie kann ich diesen satz mitels sed sertzen?

Code:
query = SELECT rewrite FROM canonical WHERE intern='%s'

in

Code:
query = SELECT intern FROM bbb WHERE rewrite ='%s'

Habe dies schon probiert, aber bekomme känderung zustande
Code:
 cat mysql_recipient_canonical | sed 's/query\ \=\ SELECT\ rewrite\ FROM\ canonical\ WHERE\ intern\=\\'\\%s\\' /query\ \=\ SELECT\ intern\ FROM\ bbb\ WHERE\ rewrite\=\\'\\%s\\' /g'

Danke für die hilfe im voraus.

Gruss tiptel170
 
Hi,

Lass mal die ganzen backslashes weg - die brauchts nicht. Das Ganze sollte einfach z.B. so
Code:
cat mysql_recipient_canonical | 
sed -e "s/query = SELECT rewrite FROM canonical WHERE intern='%s'/query = SELECT intern FROM bbb WHERE rewrite ='%s'/"
oder auch so - evtl. lesbarer
Code:
IN="query = SELECT intern FROM bbb WHERE rewrite ='%s'"
OUT="query = SELECT intern FROM bbb WHERE rewrite ='%s'"

sed -e "s/$IN/$OUT/" <mysql_recipient_canonical
laufen.

Gruss, A.
 
Hallo floyd62,

danke für die info. Der erste tipp hat funktioniert. Gruss tiptel170
 

Ähnliche Themen

Mehrzeiligen String mittels sed ersetzen

suchen und ersetzen, Format erhalten

Xubuntu - AVR32-linux crosscompile sqlite

Sed od. Awk - Ersetzen unbekannter parameter

SED ersetzen-pattern mit Funktion berechnen

Zurück
Oben