Pfandangaben ändern

Diskutiere Pfandangaben ändern im Linux OS Forum im Bereich Linux/Unix Allgemein; Hallo, ich bin einem Projekt auf einen neuen Server umgezogen und möchte nun die Pfadangaben in allen Dateien per SSH Zugang ändern. First:...

  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.112
    Zustimmungen:
    9
    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.112
    Zustimmungen:
    9
    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. Puppy linux helligkeit ändern.

    Puppy linux helligkeit ändern.: Wie ändere ich bei Puppy linux meine helligkeit ?
  2. User sollen Dateien speichern und ändern, aber nicht neu anlegen dürfen

    User sollen Dateien speichern und ändern, aber nicht neu anlegen dürfen: Hallo liebe Helfer, welche Einstellungen muss ich in der smb.conf bzw. unter Linux vornehmen, damit User vorhandene Dateien öffnen und speichern...
  3. 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...
  4. 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...
  5. 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...