Liste in TXT Datei filtern

  • Hallo liebe Programmierer,
    Ich habe ca. 350 000 Dateien erfolgreich nach einer Löschung wiederhergestellt. Leider befinden sich diese vielen Dateien alle in einem Ordner.
    Ich habe aber eine Liste, in der der ursprüngliche Pfad jeder Datei steht, die nach diesem Schema formatiert ist:
    Dateiname Dateigröße in Bytes ursprünglicher Pfad zur Datei
    hier ein kleiner Auszug:

    Code
    mt-core.js                                                    94425       P:\Dateien\wamp3\www\s2\                                      
    mt-full.js                                                    116829      P:\Dateien\wamp3\www\s2\                                      
    mt-more.js                                                    28449       P:\Dateien\wamp3\www\s2\

    Jetzt möchte ich die ganzen Dateien, die aufgelistet sind aus dem gewaltigen Ordner zu dem jeweils am Ende der Zeile angegebenen Pfad kopieren.

    Mein mini Ansatz:

    Code
    $s = FileReadToArray("D:\list.txt")

    Aber wie filtere ich jetzt die einzelnen Zeilen aus dem Array nochmal, damit ich den Dateinamen und den Pfad getrennt bekomme?

    Würde mich über Hilfe freuen :)

    LG Schweizergeizer

  • Das Prinzip ist einfach:

    Schritt 1: Wir schmeißen alle zusätzlichen Leerzeichen raus (hoffe in deiner Datei verwendest du tatsächlich auch Leerzeichen wie oben dargestellt - ansonsten den Part anpassen [Zeile 6-8])

    Schritt 2: Nun splitten wir das Array-Element (den String) an dem letzten verbleibenden Leerzeichen. Zeile 9.

    Schritt 3: In Zeile 3 habe ich eine fiktive "Quelle" erfunden. Dadurch kann ich in den Zeilen 10 bis 13 den Dateinamen, die Dateigröße, den Pfad zur Datei und was von wo nach wo kopiert werden müsste einzeln ausgeben.

    Spoiler anzeigen

    Ausgabe:

    Dateiname: mt-core.js
    Dateigröße: 94425
    Pfad zur Datei: P:\Dateien\wamp3\www\s2\
    ! C:\Users\AutoIt\Desktop\mt-core.js -> P:\Dateien\wamp3\www\s2\mt-core.js

    Dateiname: mt-full.js
    Dateigröße: 116829
    Pfad zur Datei: P:\Dateien\wamp3\www\s2\
    ! C:\Users\AutoIt\Desktop\mt-full.js -> P:\Dateien\wamp3\www\s2\mt-full.js

    Dateiname: mt-more.js
    Dateigröße: 28449
    Pfad zur Datei: P:\Dateien\wamp3\www\s2\

    ! C:\Users\AutoIt\Desktop\mt-more.js -> P:\Dateien\wamp3\www\s2\mt-more.js

    Es gibt Tage, da trete ich nicht ins Fettnäpfchen. Ich falle in die Friteuse.

  • Vielen vielen Dank!
    Das Script funktioniert wunderbar

    ich hab es noch folgendermaßen verändert:



    Jetzt läuft die Rekonstruktion der Ordnerstruktur, einfach toll

    LG Captain09