Mailinglist Archive: opensuse-de (6022 mails)

< Previous Next >
Re: Brauche Hilfe,Kriegs mit find nicht hin :-(
  • From: Harry Rüter <harry_rueter@xxxxxx>
  • Date: Sun, 17 Feb 2002 18:16:08 +0100
  • Message-id: <3C6FE558.E9AD0279@xxxxxx>
Hi Henne,

Henne Vogelsang wrote:

Hi,

On Sunday, February 17, 2002 at 17:13:54, Harry Rüter wrote:

ich versuche schon seit zwei Stunden
"find" zu bezwingen, kriegs aber irgendwie nicht hin.

Geplant ist folgendes :

Es existiert ein Verzeichnis mit mehreren Dateien.

Jede Datei mit einer bestimmten Endung (zb html)
soll mit sed "behandelt" werden.

sed soll eine Textersetzung machen und die Ausgabe auf eine
temporäre Datei umleiten.

Nachdem sed fertig ist, wird die ursprüngliche Datei
gelöscht, die temporäre Datei erhält den Namen der
ursprünglichen Datei.



Die sed-Sequenz im Script sähe folgendermaßen aus :

---script----

#!/bin/sh

txt=s/$1/$2/g

sed "$txt" $datei > $datei.tmp
rm $datei
mv $datei.tmp datei

---script-----

Die nicht funktionierende find-Sequenz :

find . -name `$3` -exec <- hier soll die obige Sequenz ausgeführt werden

Aufruf wäre dann zb :

./script text1 text2 "*.html"

warum find?

Das funzt nur, wenn die Dateien keine Leerzeichen enthalten,
tun sie aber (schlechtes deutsch,naja ich laß es mir mal durchgehen :o) )

Hatte ich vergessen zu erwähnen, sonst wäre ich sicher ohne das find
weitergekommen.

#!/bin/sh

for i in $3; do
sed s/$1/$2/g w $i > $i.tmp
rm $i
mv $i.tmp $i
done

Henne

mfg Harry

< Previous Next >
Follow Ups