Announcement

Collapse
No announcement yet.

Shell-Script: Dateien aus Backup wiederherstellen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Shell-Script: Dateien aus Backup wiederherstellen

    Hallo!

    Habe zwar einen Mac, aber ich denke ihr könnt mir hier trotzdem weiterhelfen...

    Ich habe mithilfe von diesem Shellscript überflüssige Sprachdateien loswerden wollen:

    Code:
    find /Applications ~/Applications /Library ~/Library \( -iname '*.lproj' -and \! \( -iname 'en*' \) -and \! \( -path '/Library/Receipts/*' -or -path '~/Library/Receipts/*' \) \) -print0 | xargs -0 rm -frv {}
    Dabei habe ich leider vergessen, auch die deutschen Sprachdateien bei der Suche auszuschließen, was dann so ausgesehen hätte:

    Code:
    find /Applications ~/Applications /Library ~/Library \( -iname '*.lproj' -and \! \( -iname 'en*' -or -iname 'de*' -or -iname 'ger*' \) -and \! \( -path '/Library/Receipts/*' -or -path '~/Library/Receipts/*' \) \) -print0 | xargs -0 rm -frv {}
    Da ich glücklicherweise ein volles Backup von meinem System, so dass ich das ganze auf folgende Weise wieder rückgängig machen könnte:

    1. Auf dem aktuellen System nach "en*.lproj" suchen
    2. Den Pfad jeder gefundenen Datei nehmen, "/Volumes/Backup" davorschreiben um das Backupverzeichnis auszuwählen
    3. Dort nach "de*.lproj" und "ger*.lproj" suchen
    4. Die gefundene(n) Datei(en) in den Pfad zur ursprünglich gefundenen Datei kopieren

    Wie der "find" Befehl aussieht, ist klar... aber kann mir jemand mit dem Rest helfen? Wenn ich hunderte von Dateien per Hand kopieren muss, verzweifel ich!

    Danke im Vorraus!

  • #2
    Nevermind, solved it!

    Hint:

    Code:
    find ... | \
    sed -n "s/English.lproj/de.lproj/;s_.*_cp '/Volumes/Backup&' '&'_p;" | \
    sed -n 'p;s/de.lproj/German.lproj/gp'

    Comment

    Working...
    X