Estou tentando agrupar backups antigos do Time Machine de diferentes computadores que tive ao longo dos anos e quero manter apenas a última versão exclusiva de cada arquivo. Consegui fazer isso usando ls -d 20* | while read dir; do find "$dir" -type f -links +1 -exec rm "{}" \; done
, e funcionou perfeitamente (demorou um pouco).
O problema é que existem muitos diretórios vinculados, então ainda tenho muitas duplicatas por causa deles e não consigo encontrar nenhuma informação sobre como desvincular diretórios. Por exemplo:
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
Existem duas versões da pasta acima, armazenadas para duas datas em cada caso. Quero deletar o 2012-02-20-143022
e 2012-04-06-061205
deixar os outros. Eu só poderia fazer isso desvinculando esses diretórios, mas unlink
não funciona em diretórios, nem gunlink
no GNU CoreUtils no Homebrew, como sugerido porhttps://superuser.com/a/557425/490956.
Como posso desvincular esses dois diretórios e deixar apenas a entrada mais recente?