Wenn man mit dem VI in einer Datei Variablen Inhalt ersetzen will, dann kann man das mit RegExp ganz gut hinbekommen.
z.B.:
Eine Datei mit folgendem Inhalt
| abc1234567890xyz abc0987654321xyz aaa1234567890xyz abc0987654321xxx | 
soll ersetzt werden mit folgendem Inhalt
| cba1234567890zyx cba0987654321zyx aaa1234567890xyz abc0987654321xxx | 
dann ist dafür die suchen und ersetzen Funktion des vi mit entsprechenden RegularExpressions zu füllen:
| :%s/abc\(.*\)xyz/cba\1zyx/g | 
Relevant ist im Suchstring die in auskommentierte runde Klammern gesetzte RegExp. Diese wird im Ersetzstring mit der auskommentierten 1 wieder eingefügt. Sollte es mehrere variable Bereiche geben, so werden die Strings durchnummeriert (1, 2 … n).
Dieses funktioniert so natürlich auch mit dem sed:
| sed 's/abc\(.*\)xyz/cba\1zyx/g' [DATEI] | 
 
                
                                                                
Neueste Kommentare