PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : mehrere dateien gleichzeitig editieren?



Dunix
15-04-2001, 22:29
guten tach
ich suche ein script, daß in der lage ist, bei mehreren html-seiten gleichzeitig die hintergrundfarbe zu verändern, so daß ich mir auch größere framesets schnell mit anderem hintergrund anschauen kann. für einzelne seiten hab ich das mit "sed s/#xxxxxx/#yyyyyy/" schon erreicht, bei verzeichnissen bekomme ich dann allerdings die meldung "ambiguous redirect". kann mir jemand helfen?
tschüs - boris

pitu
17-04-2001, 12:52
for i in `find -name "*.html"`; do
sed s/#xxxxxx/#yyyyyy/" $i > /tmp/tmp.html
cp /tmp/tmp.html $i
done


Ungefaehr so?

thorsten

mightymike99
18-04-2001, 05:22
Ich will ja nicht angeben, aber das geht aber auch besser!
<code>
find -name "*.html" -exec sed /#xxxxxx/#yyyyyy/" {} \;
</code>

mfg /ubb/icons/icon6.gifmightymike99/ubb/icons/icon6.gif

pitu
18-04-2001, 13:19
damit hast du nur das Problem, dass sed nach STDOUT schreibt. Problem, du kannst mit sed nicht direkt die Datei veraendern, du musst sie nachher umkopieren.

thorsten

mightymike99
18-04-2001, 21:48
OK, hab ich den schnabel zu weit auf gerissen...

<code>
find /path-name "*.html" -exec sed /#xxx/#yyy/" {} >/tmp/tmp923 \; -exec mv /tmp/tmp923 {} \;
</code>

Ansonsten hatte ich irgendwann, glaube ich, einen Fehler damit, das der Ergebnisstring der Variable i=$(find ...) zu gross war. Ich kann's im Moment leider nicht ausprobieren.

mfg mightymike

pitu
19-04-2001, 10:49
<BLOCKQUOTE><font size="1" face="Arial,Helvetica,Geneva">Zitat:</font><HR>Original erstellt von mightymike99:

Ansonsten hatte ich irgendwann, glaube ich, einen Fehler damit, das der Ergebnisstring der Variable i=$(find ...) zu gross war. Ich kann's im Moment leider nicht ausprobieren.

mfg mightymike[/quote]

Uhhh, dann muss er aber schon sehr gross gewesen sein, aber dafuer nimmt man dann "xargs".

thorsten

Dunix
26-04-2001, 13:08
hallo thorsten / mike
erstmal herzlichen dank für eure bemühungen und entschuldigt, das ich mich erst so spät melde, aber ich hab halt im moment viel zu tun blablabla und hatte außerdem (als totaler anfänger) erstmal ein paar probleme mit der umsetzung eurer vorschläge. mit folgendem script klappts jetzt aber einwandfrei:

for i in 'find -name "*.html"';
do sed s/#xxxxxx/#yyyyyy/ §i > /tmp/bgcolor
cp /tmp/bgcolor §i
done

bei der zweiten version hab ich das problem mit STDOUT nicht lösen können, das zweite -exec wird bei mir nicht als komando anerkannt.
also nochmal herzlichen dank an euch beide und tschüs - boris