Lista de copias de seguridad de Time Machine de un archivo

0

Si tengo una ruta de archivo o directorio, ¿cómo puedo enumerar todas las copias de seguridad de Time Machine de esa ruta?

    
pregunta JW. 17.03.2016 - 19:20

2 respuestas

2

Aquí está mi intento:

#!/bin/bash
# list Time Machine backups of a file starting with most recent

if [ "$#" -ne 1 ]; then
    echo "Usage: list_backups.sh filename"
    exit
fi

filename='realpath "$1"'

# find root volume path
for vol in /Volumes/*; do 
    if [ "$(readlink "$vol")" = / ]; then 
        root_vol=$vol
    fi
done 

# prepend it to input path if necessary
if [[ "$filename" != /Volumes* ]]; then
    filename="$root_vol$filename"
fi

# remove /Volumes from input path
filename="${filename///Volumes}"

# loop over backups in reverse order
tmutil listbackups | tail -1000 -r |
while IFS= read -r line; do
    if [ -e "$line$filename" ]; then
        ls -ald "$line$filename"
    else
        echo "not in $line"
    fi
done
    
respondido por el JW. 17.03.2016 - 19:20
2

Suponiendo que no haya cambiado el nombre de su unidad principal de 'Macintosh HD' a otra cosa, puede ejecutar

ls -l /Volumes/Time\ Machine/Backups.backupdb/$(hostname -s)/*/Macintosh\ HD/$(realpath FILENAME)

para ver todas las versiones almacenadas en TimeMachine.

PS realpath solo está disponible si tiene GNU coreutils instalados (por ejemplo, a través de brew). De lo contrario, use $(pwd)/FILENAME o (si esto no funciona porque hay algunos enlaces simbólicos involucrados) especifique la ruta completa.     

respondido por el nohillside 17.03.2016 - 19:33

Lea otras preguntas en las etiquetas