Ich versuche, alte Time Machine-Backups von verschiedenen Computern, die ich im Laufe der Jahre hatte, zusammenzustellen, und möchte nur die letzte eindeutige Version jeder Datei behalten. Das ist mir mithilfe von gelungen ls -d 20* | while read dir; do find "$dir" -type f -links +1 -exec rm "{}" \; done
, und es hat wunderbar funktioniert (hat allerdings eine Weile gedauert).
Das Problem ist, dass es viele verknüpfte Verzeichnisse gibt, sodass ich immer noch jede Menge Duplikate habe und nirgends Informationen darüber finden kann, wie man die Verknüpfung von Verzeichnissen aufhebt. Beispiel:
iMac:ETH Mac root# stat -f "%i %N" */"HDD/Users/etolnay/.macports/opt/local/var/macports/sources/rsync.macports.org/release/ports/net/ctorrent"
21569569 2012-02-20-143022/HDD/Users/etolnay/.macports/opt/local/var/macports/sources/rsync.macports.org/release/ports/net/ctorrent
21569569 2012-03-02-054540/HDD/Users/etolnay/.macports/opt/local/var/macports/sources/rsync.macports.org/release/ports/net/ctorrent
23843405 2012-04-06-061205/HDD/Users/etolnay/.macports/opt/local/var/macports/sources/rsync.macports.org/release/ports/net/ctorrent
23843405 2012-04-13-134054/HDD/Users/etolnay/.macports/opt/local/var/macports/sources/rsync.macports.org/release/ports/net/ctorrent
Es gibt zwei Versionen des obigen Ordners, die jeweils für zwei Daten gespeichert sind. Ich möchte die 2012-02-20-143022
und die löschen und 2012-04-06-061205
die anderen übrig lassen. Ich könnte dies nur tun, indem ich die Verknüpfung dieser Verzeichnisse aufhebe, aber unlink
das funktioniert nicht bei Verzeichnissen und auch nicht gunlink
bei GNU CoreUtils in Homebrew, wie vorgeschlagen vonhttps://superuser.com/a/557425/490956.
Wie kann ich die Verknüpfung dieser beiden Verzeichnisse aufheben und nur den neuesten Eintrag belassen?