mit find und sed ersetzen

Bash, Shell, PHP, Python, Perl, CGI
as-n
Posts: 196
Joined: 2002-12-19 17:42

mit find und sed ersetzen

Post by as-n »

Hallo,

versuche gerade den Umzug auf den neuen Server vorzubereiten.
Die websites liegen nun nicht mehr in /home/www, sondern in /srv/www/htdocs.
Ich versuche nun mittels folgendem Script, diese Pfade automatisch ändern zu lassen, aber es will nicht:

Code: Select all

for f in `find . -type f`; do sed 's/home/www/srv/www/htdocs/g' <$f >/tmp/replace.$$ && mv /tmp/replace.$$ $f ; done
Es kommt andauernd

Code: Select all

sed: -e expression #1, char 13: Unknown option to `s'
Ich sehe aber den Fehler nicht. Kann wer helfen?

Danke.

Ciao
AS-N
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten

Re: mit find und sed ersetzen

Post by captaincrunch »

Du hast die "/" falsch maskiert. Richtig müsste es / lauten.
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
as-n
Posts: 196
Joined: 2002-12-19 17:42

Re: mit find und sed ersetzen

Post by as-n »

Oh, naklar, danke.
thorsten
Posts: 561
Joined: 2003-02-01 13:14
Location: Fuldatal

Re: mit find und sed ersetzen

Post by thorsten »

Benutze ein aktuelles sed (> 4.0 ) und du kannst die Option --in-file benutzen.
Dann sparst du dir die temporäre Datei.
(fürs nächste mal ;))
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten

Re: mit find und sed ersetzen

Post by captaincrunch »

Weiterer Tip: "#" als Begrenzer macht sich bei Pfadangaben auch immer ganz nett, da spart man sich das quoten. ;)
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
as-n
Posts: 196
Joined: 2002-12-19 17:42

Re: mit find und sed ersetzen

Post by as-n »

Brauche nochmal kurz Hilfe, kann man auch irgend wie symlinks so ändern?

In /var/log/httpd/confixx/domains/access sind ja die symlinks zu /home/www/webXXX/log/access_log und ich muss dass ja auch in /srv/www/htdocs/webXXX/log/access_log ändern.

Danke.

AS-N