sed -> Problem mit Pfadersetzung

T

Till

Grünschnabel
Hallo,

ich nehme Einstellungen mit einem Script in einer Config-Datei vor.
So weit so gut :-)

Einfache Ersetzungen klappen prima.
In meiner Config-Datei kann ich:
$sqlHost="localhost" mit
Code:
  sed -i "s/$\$sqlHost=.*/$\$sqlHost=\"$neuer_wert\"/" $1
aktualisieren. ($1 ist der übergebene Pfad)

Jetzt bin ich aber gerade vor die Wand gelaufen ;(

In meiner Config-Datei musste jetzt ein Pfad geschrieben werden.

Also

DocumentRoot="/var/www/html/service/"
(Ich ersetze mit sed immer alles was nach dem = kommt)

Dort kann ich das obige sed nicht anwenden. Das Problem liegt an den Slashes.

Der neu zu schreibende Wert wird auch in einer Variablen angeliefert.

Soll ich jetzt diese Variable schon vorher abändern, das ich die / mit \/ maskiere, damit sed das dann frisst, oder gibt es eine Möglichkeit dies alles auf einmal zu machen???

Ich habe mir gerade einen abgegooglet.

Gruß
 
Hallo Till

Du kannst bei 'sed' einfach einen anderen Delimiter wählen, dann ist das mit den Slashes und den Pfaden kein Problem mehr:
Code:
sed 's/hugo/paul/g' file
ist das gleiche wie
Code:
sed 's:hugo:paul:g' file
das heisst wenn du mit Pfaden arbeitest nimmst du besser einen anderen Delimiter als den Slash.

Gruss
d22
 

Ähnliche Themen

dovecot und postfix Konfiguration Problem

sed in Verbindung mit pwd in einem Makefile

Problem mit Zeilenumbruch nach sed

VHOST Problem, Debian Lenny

Mysql connect Problem

Zurück
Oben