Linux 14.981 Themen, 106.344 Beiträge

script oder oneline-command - mit sed directory ändern?

edico / 5 Antworten / Flachansicht Nickles

Hej script&bash_freaks,
in vielen (html-)Files sollen die directories(pfade) verändert werden - wie /home/user/bsp/bier[=pfad-alt] nach wein[=pfad-neu].
Grundsätzlich kann ich das über eine for-Schleife laufen lassen, und ich dachte mit sed das Problem zu lösen. Aber ein Slash ist nicht opportun im (oneline-)sed-command. Also das läuft hier nicht:
for i in *; do sed -e \'s/pfad-alt/wein/g\' neu-file; done. Eine ähnliche Lösung über ein perl-script macht dieselben Fehler. Wo ist die Lösung (kann natürlich auch ein script sein)?
Danke. edico

bei Antwort benachrichtigen
edico Nachtrag zu: „script oder oneline-command - mit sed directory ändern?“
Optionen

Hej Klaus,
nö- das is doch exakt dasselbe - bis auf die Option -e von sed. Das Perlscript ist das, von dem ich gesprochen habe.
Lass es mich konkreter machen:
Es ist schon so gemeint, dass der zu eliminierende string mit mehreren Slashes w/Directory bestückt ist. Also /usr/lib/xyz/abc/und-jetzt-file-name. Es geht nicht nur um einen alleinigen string! Dann, lieber Freund, alles klaro. Dabei handelt es sich innerhalb der HTML-Files um Grafik-Pfade (was an sich keine Rolle spielt, nur jetzt der näheren Erklärung dient):
Wenn ich - gleich ob bei perl oder sed - die Pfade (logischerweise) mit den Slashes eingebe, meckern die scripte! Also, da ist meit perl und sed Sense ... oder was und/oder welche Option übersehe ich?
That's my problem, sir!
Danke.edico

bei Antwort benachrichtigen