ubuntuusers.de

Durch Verzeichnis "Suchen und ersetzen"

Status: Ungelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |

gorzka

Avatar von gorzka

Anmeldungsdatum:
23. Oktober 2004

Beiträge: 557

Wohnort: Halberstadt

Wie kann ich durch einen ganzen Verzeichnisbaum in allen Dateien ein bestimmtes zeicjen suchen und ersetzen?

Ich möchte z..B. ein ä durch einen entsprechenden HTML Umlaut ersetzen.

jf

Avatar von jf

Anmeldungsdatum:
9. November 2004

Beiträge: 108

Wohnort: Innsbruck, Österreich

Ich denke sed kann das.

Dakuan

Avatar von Dakuan

Anmeldungsdatum:
2. November 2004

Beiträge: 6468

Wohnort: Hamburg

Ich habe sowas auch mal machen müssen, weil ich auf externe Stylesheets umgestellt habe. Das waren 800 *.csv Dateien allerding nur in einem Verzeichnis. Mein "quick and dirty" Tool sah etwa so aus:

#!/bin/bash
#
#
#FILES=`find ~/Projects/dbf -iname '*.csv'`
FILES=`find . -iname '*.csv'`
for f in $FILES
  do
  echo "$f"
# ignore plain template
  if [ $(grep 'plain.inc' $f) ] ; then
    continue
  fi
#   alle <h3> Tags gegen <h1> tauschen und dabei Styles etc. unterdrücken
    sed  -e 's#<h3[^>]*>#<h1>#g' -e 's#</h3>#</h1>#g' $f >~/temp.txt
    cp ~/temp.txt $f
done

Nebenwirkungsfreiheit kann nicht garantiert werden! Desshalb hatte ich vorher ein Backup gemacht.

Wie die Profis sowas machen kannst du dir hier ansehen: http://www.linux-club.de/viewtopic.php?t=36499

Ob dise Scripte allerdings richtig arbeiten, wenn du ISO und Unicode Zeichensätze gemischt hast weiss ich nicht.

Dakuan

Antworten |