sed Text in Datei ersetzen Problem

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von sparky, 26.05.2004.

  1. sparky

    sparky Mitglied

    Dabei seit:
    16.01.2004
    Beiträge:
    47
    Zustimmungen:
    0
    also ich will einen Platzhalter in einer Datei {PLATZHALTER} ersetzen mit einem Verzeichnisnamen /test/1/2/

    mein Code:
    Code:
    #!/bin/bash
    MOD_PATH=""
    
    echo -n "Verzeichnis relativ wwwroot: "
    read MOD_PATH
    
    for i in *.html ; do
            sed -e 's/\{MOD_PATH\}/$MOD_PATH/g' "$i" > "$i.back"
    done
    exit 0
    
    das problem, ich hab nacher $MOD_PATH als ersetzung drin. und wenn ich " statt ' mache, dann bekomm ich einen Fehler. ich schätze es liegt daran dass in edm Ersetzungsstring / vorkommen.
    Hat jemand eine Lösung ?
     
  2. Anzeige

    Schau dir mal diesen Ratgeber an. Viele Antworten inkl. passender Shell-Befehle!
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. meez

    meez miis

    Dabei seit:
    27.04.2003
    Beiträge:
    46
    Zustimmungen:
    0
    Ort:
    CH
    sed -e 's/\{MOD_PATH\}/'"$MOD_PATH"'/g' "$i" > "$i.back"

    So sollte es gehen...
     
  4. sparky

    sparky Mitglied

    Dabei seit:
    16.01.2004
    Beiträge:
    47
    Zustimmungen:
    0
    nein, sowas hab ich auch schon versucht ;)

    Code:
    sed -e 's/\{MOD_PATH\}/'"$MOD_PATH"'/g' "$i" > "$i.back"
    
     
  5. meez

    meez miis

    Dabei seit:
    27.04.2003
    Beiträge:
    46
    Zustimmungen:
    0
    Ort:
    CH
    Es würde funktionieren...;)
    Aber du hast einen Pfad, also / im Inhalt der Var...
     
  6. meez

    meez miis

    Dabei seit:
    27.04.2003
    Beiträge:
    46
    Zustimmungen:
    0
    Ort:
    CH
    so funzt...Ist einfach ein wenig umstädlich..;)

    sed 's/\{MOD_PATH\}/'`echo $MOD_PATH | sed 's/\//@@PLACEHOLDER@@/g'`'/g' $i | sed 's/@@PLACEHOLDER@@/\//g' > "$i.back"
     
  7. oenone

    oenone Freier Programmierer[Mod]

    Dabei seit:
    22.08.2002
    Beiträge:
    599
    Zustimmungen:
    0
    Ort:
    Mannheim
    warum nicht einfach bei sed statt / ein anderes zeichen, wie z.b. + oder # benutzen ?

    auf bald
    oenone
     
Thema:

sed Text in Datei ersetzen Problem

Die Seite wird geladen...

sed Text in Datei ersetzen Problem - Ähnliche Themen

  1. Timestamp an Inhalt einer Textdatei anfügen

    Timestamp an Inhalt einer Textdatei anfügen: Hallo, ich als neuer, unerfahrener Nutzer von Linux und der bash hätte folgende Frage. Und zwar würde ich gerne mit einem command den Zeitstempel...
  2. Textdatei zeilenweise in durchnummerierte Variablen schreiben

    Textdatei zeilenweise in durchnummerierte Variablen schreiben: Hi Leute, ich versuche folgendes Problem zu lösen. Ich möchte eine Textdatei einlesen und den Inhalt jeder Zeile in immer eine neue Variable...
  3. SSH Login nur mit einer bestimmten IP die in einer Textdatei gespeichert wird

    SSH Login nur mit einer bestimmten IP die in einer Textdatei gespeichert wird: Hallo Ich bin andauernd Opfer einer Brute Force Attacke. Die IPs die fehlerhafte Logins produzieren werden nach dem 3ten Versuch gesperrt. Aber...
  4. Programm für Audiodatei in Textdatei konvertieren

    Programm für Audiodatei in Textdatei konvertieren: Hallo, ich habe für ein Projekt eine Menge Interviews geführt und habe diese digital auf dem Rechner. Allerdings dauert das Abtippen ewig....
  5. nach einem wort in einer textdatei suchen

    nach einem wort in einer textdatei suchen: halloooo ihr lieben, ich hoffe ihr könnt mir weiterhelfen :) ich lernen momentan die skriptsprache shell und alles was dazu gehört. ich soll...