Pfandangaben ändern

Dieses Thema im Forum "Linux OS" wurde erstellt von qix100, 11.08.2009.

  1. qix100

    qix100 Grünschnabel

    Dabei seit:
    11.08.2009
    Beiträge:
    4
    Zustimmungen:
    0
    Hallo,

    ich bin einem Projekt auf einen neuen Server umgezogen und möchte nun die Pfadangaben in allen Dateien per SSH Zugang ändern.

    First: grep -r -l '/alter/Pfad' 'cgi-bin'

    Dann zeigt er mir eine Liste mit allen Dateien wo /alter/Pfad enthalten ist.
    Nun möchte ich das in allen Dateien (auch Unterverzeichnisse) ändern.

    Dazu wollte ich folgende Anweisung nutzen: perl -p -i -e 's|/alter/Pfad|/neuer/Pfad|g'

    Er startet zwar, aber ich habe schon ganz lange gewartet und nichts passiert,
    habe auch per FTP geschaut und gesehen das die Dateien nicht geändert wurde.

    Kann mir jemand helfen wo der Fehler liegt?

    Vielen Dank,
    Frank
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 Aqualung, 11.08.2009
    Zuletzt bearbeitet: 12.08.2009
    Aqualung

    Aqualung Routinier

    Dabei seit:
    12.02.2008
    Beiträge:
    404
    Zustimmungen:
    0
    "/" und sonstige Sonderzeichen (" " etc.") musst Du quoten "\".

    So wie Du das Kommando geschrieben hast, wartet perl auf eine Eingabe (welche Datei soll bearbeitet werden) ad infinitum.

    Alle Dateien in allen Unterverzeichnissen ab akt. Verzeichnis (ACHTUNG: VORHER Kopie anlegen) kannst Du mit

    Code:
    find . -type f -exec perl -p -i -e "s/\/alter\/Pfad/\/neuer\/Pfad/g" \;
    bearbeiten.
     
  4. #3 qix100, 13.08.2009
    Zuletzt bearbeitet: 13.08.2009
    qix100

    qix100 Grünschnabel

    Dabei seit:
    11.08.2009
    Beiträge:
    4
    Zustimmungen:
    0
    Hallo Auqalung,

    vielen Dank für deine Hilfe, aber leider bekomme ich bei dieser Eingabe folgende Fehlermeldung: find: missing argument to `-exec'
    Hier meine Eingabe:
    Gruß,
    Frank
     
  5. marce

    marce Kaiser

    Dabei seit:
    01.08.2007
    Beiträge:
    1.053
    Zustimmungen:
    8
    Du solltest evtl. auch noch den Dateinamen als Argument übergeben... - also nach der RegEx und vor dem \; noch ein "{}"...

    sed kann das übrigens auch problemlos - und solange Du nicht auf die etwas mächtigeren Funktionen von Perl angewiesen bist würde ich das verwenden - läuft ein bisserl schneller, da weniger Overhead...
     
  6. #5 saeckereier, 13.08.2009
    saeckereier

    saeckereier Graue Eminenz

    Dabei seit:
    08.05.2005
    Beiträge:
    1.920
    Zustimmungen:
    0
    Ort:
    Im schönen Norden
    Dürfte sogar ziemlich starke Auswirkungen haben. Für jede zu ändernde Datei einen Perl-Interpreter starten.. Wow.. Das kann dann recht schnell etwas länger dauern..

    Probier mal sed dafür aus, aber bevor du das auf alle Dateien loslässt, *teste das genau*
     
  7. qix100

    qix100 Grünschnabel

    Dabei seit:
    11.08.2009
    Beiträge:
    4
    Zustimmungen:
    0
    Hallo,

    hmmm ... ich bin doch ein Grünschnabel :think:

    Wie muss denn der sed Befehl aussehen?
    Also ich möchte nur in ca. 100 Dateien liegend in einigen Unterverzeichnissen die Pfadangaben ändern.
    Wenn das mit dem sed command schneller geht gerne ;)

    Danke und Gruß,
    Frank
     
  8. marce

    marce Kaiser

    Dabei seit:
    01.08.2007
    Beiträge:
    1.053
    Zustimmungen:
    8
    z.B. über
    Code:
    sed -i "s/foor/bar/g" *.html
     
  9. qix100

    qix100 Grünschnabel

    Dabei seit:
    11.08.2009
    Beiträge:
    4
    Zustimmungen:
    0
    Hallo marce,

    vielen Dank für den string ... nur was mache ich wenn ich einen längeren Pfad gleichzeitig ändern möchte ?

    Zum Beispiel: /foor1/foor2/foor3/ ändern in /bar1/bar2/bar3/

    Danke,
    Frank
     
  10. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  11. Gast1

    Gast1 Guest

    Wurde Dir doch schon gesagt:

     
  12. #10 computerophil, 04.10.2009
    computerophil

    computerophil Jungspund

    Dabei seit:
    09.06.2009
    Beiträge:
    13
    Zustimmungen:
    0
    Die Diskussion ist zwar glaub ich schon vorbei aber ich wollte Dir sagen dass Deine Überschrift werbewirksam war:
    Pfandangaben ändern.
    Du solltest weniger an Flaschen denken ;-)
     
Thema:

Pfandangaben ändern

Die Seite wird geladen...

Pfandangaben ändern - Ähnliche Themen

  1. Home Verzeichnis ändern

    Home Verzeichnis ändern: Hallo Wollte nicht, dass mein Sohn (16) in die veschränkte WIN Welt hinein wächst und habe für Ihn Linux Mint auf seinem LAPTOP installiert. Er...
  2. Mozilla-Studie: Web schafft Chancen in Entwicklungsländern

    Mozilla-Studie: Web schafft Chancen in Entwicklungsländern: Mozilla hat gemeinsam mit der GSMA eine Studie erstellt, die die Möglichkeiten des Webs in Entwicklungsländern aufzeigt. Eine wachsende Zahl von...
  3. Tastaursignale für ein bestimmtes Programm ändern

    Tastaursignale für ein bestimmtes Programm ändern: Abend, ist es unter Ubuntu möglich die Tastenbefehle die bei einem bestimmten Programm ankommen nur für dieses Programm zu ändern? Wenn also...
  4. youtube-dl mit WebUI einrichten - Download-Ordner ändern + Berechtigungen

    youtube-dl mit WebUI einrichten - Download-Ordner ändern + Berechtigungen: Hallo, auf meinem Raspberry Pi habe ich youtube-dl (manuelle Installation; systemweit [wie im UU-Wiki beschrieben]) installiert. Dazu...
  5. .cfg Datei Analysieren und Zeilen Stellenweise abändern

    .cfg Datei Analysieren und Zeilen Stellenweise abändern: Hallo allesamt :) ich hab ein kleines Problem. Ich will mittels eines Shell Skriptes in einer Datei die Namensgebung einiger Geräte ändern. Ich...