Folgendes Problem:
In unserem Intranet müssen Dokumenten-Namen verändert werden.
Die Umbennungen der Dateinamen lassen sich auch sehr einfach durch Batch o. Script durchführen.
Alter Dokument-Name: 07-XXXX.htm
Neuer Dokument-Name: XXXX-07.htm
Allerdings führen dann alle Links in den Dokumenten ins „Nichts“.
Ich muss also alle alter Links
… siehe unter Dokument 07-2035…
in diese Form bringen:
… siehe unter Dokument 2035-07…
Als Script in Etwa so:
Für alle Dateien im aktuellen Verzeichnis
Suche nach „07-“
Merke dir die nächsten 4 Zeichen
Ersetze den kompletten String durch
die gemerkten 4 Zeichen + „-07“
…
Ich suche nun das richtige Tool zum Suchen und Ersetzen aller Links nach o.g. Schema bei allen HTML-Dokumenten in einem Verzeichnis.
Ist hier Perl die richtige Wahl oder kann ein Unix/Linux-Tool wie awk die Aufgabe lösen?
Gruss, Andreas
VIELLEICHT eine Lösung, aber sicher bin ich nicht.
Ich suche nun das richtige Tool zum Suchen und Ersetzen aller
Links nach o.g. Schema bei allen HTML-Dokumenten in einem
Verzeichnis.
Ist hier Perl die richtige Wahl oder kann ein Unix/Linux-Tool
wie awk die Aufgabe lösen?
Ich weiß wirklich nicht, ob kfilereplace (KDE, http://kfilereplace/sourceforge.net/ ) soetwas beherrscht. Vielleicht mal einen Blick wert.
Gruß,
Sebastian
solltest du macromedia dreameaver haben, dann öffne mal die ganze site damit und wenn du dort nen namen änderst werden entsprechend die links mitgeändert…
solltest du macromedia dreameaver haben, dann öffne mal die
ganze site damit und wenn du dort nen namen änderst werden
entsprechend die links mitgeändert…
Habe leider kein macromedia. Wir verwenden als Haupteditor „Phase5“.
Ich weiß wirklich nicht, ob kfilereplace (KDE,
http://kfilereplace/sourceforge.net/ ) soetwas beherrscht.
Vielleicht mal einen Blick wert.
Danke für den Tipp - sehe ich mir mal genauer an.
Hallo Namensvetter,
Folgendes Problem:
Ich muss also alle alter Links
… siehe unter Dokument07-2035…
in diese Form bringen:
… siehe unter Dokument2035-07…
Ist hier Perl die richtige Wahl oder kann ein Unix/Linux-Tool
wie awk die Aufgabe lösen?
In Perl laesst sich das als Kommandozeile erledigen:
perl -pi.alt -e "s/(07)-(\d{4})/$2-$1/g" bsp.txt
aus bsp.txt
Ich muss also alle alter Links
.. siehe unter [Dokument 07-2035](07-2035.htm)...
in diese Form bringen:
.. siehe unter [Dokument 2035-07](2035-07.htm)...
wird dann:
Ich muss also alle alter Links
.. siehe unter [Dokument 2035-07](2035-07.htm)...
in diese Form bringen:
.. siehe unter [Dokument 2035-07](2035-07.htm)...
Eine Sicherungskopie der alten Datei mit dem Namen bsp.txt.alt
wird durch die Option „i.alt“ automatisch angelegt, fuer den
Fall der Faelle.
Zu beachten ist, dass der Einzeiler unter Windows
wie oben in „befehl“ eingeschlossen wird, unter Linux/Unix
aber mit ‚befehl‘.
Hoffe geholfen zu haben.
Gruesse,
-Andreas.
Super!! Dis isses 
Ich bin begeistert!
Eine Befehlszeile und das Problem ist gelöst:
perl -pi.alt -e „s/(07)-(\d{4})/$2-$1/g“ bsp.txt
Vielen Dank für die Hilfe. 
Gruß, Andreas