¿Cómo determinar la ubicación original del archivo que se encuentra actualmente en la Papelera?

Supongamos que algún archivo "Any File.pdf" está en la Papelera (también conocido como ~/.Trash).

¿Cómo puedo determinar su ubicación original?

Por "ubicación original" me refiero a la carpeta a la que se movería ese archivo si se le aplicara el comando "Volver a colocar" (pero sin hacerlo). (Vea la figura a continuación).

(Esperaba que esta información estuviera disponible al ejecutar "Obtener información" en el archivo, pero no la encontré allí).

Volver

Como se mencionó aquí (último comentario), esta información parece estar almacenada en el archivo .DS_Store en la carpeta de basura
Ver soultion aquí discusiones.apple.com/thread/5767821?tstart=0 pero no funciona si la carpeta adjunta se ha eliminado.

Respuestas (4)

Los datos que contienen la ubicación original de un archivo antes de colocarse en la Papelera se guardan en el archivo .DS_Store en la carpeta ~/.Trash .

Dado que la carpeta de papelera está oculta, normalmente no se puede encontrar con la aplicación de búsqueda. La forma más fácil de encontrar este archivo es usando la Terminal e ingresando los siguientes comandos.

$cd ~/.Trash
$open -e .DS_Store

Esto abrirá el archivo en TextEdit. Desde allí, debería poder buscar rápidamente el archivo por su nombre y su ruta original.

Parece que los archivos en .DS_Store siguen el patrón de:

FILE_NAME ptbLustr ORIGINAL_PATH_TO_FILE

Los espacios de nota se agregan solo para facilitar la lectura.

¿Realmente probaste eso? .DS_Store contiene muchos datos binarios, no encontré ningún nombre de archivo.
Probé esto en mi propia máquina antes de publicar. Encontré referencias a archivos en mi Papelera y sus ubicaciones originales.
Ah, parece depender de la configuración del idioma, aquí todo es Unicode.
Creo que esta respuesta solo funciona para OS X alrededor de/antes de 10.4 o 10.5, ya que .DS_Store ahora es un archivo binario y no está documentado por Apple .
Todavía funciona aquí en OS X 10.7.5.
todavía funciona en OSX 10.11.5. Funciona cuando lo abro en TextEdit, pero no Sublime Text
Es un archivo binario, pero aún puede ver las cadenas que están almacenadas en él, en la mayoría de los editores de texto. Sin embargo, la búsqueda no parece funcionar correctamente cuando se abre en TextEdit. Puedo ver todos mis archivos allí, pero cuando trato de buscar más de un carácter a la vez, arroja 0 resultados (aunque si busco esos caracteres uno por uno, los encuentra todos). Esto probablemente depende del editor en el que se abre, pero TextWrangler es de la misma manera. Desafortunadamente, sin que funcione la búsqueda, este método es bastante difícil de usar.
@David, seguramente dirás qué significa ptbLustr.
@Elezar, Sí, esa es la definición de un archivo binario. Hay cadenas de texto legibles en un montón de archivos binarios. Si no es completamente legible en Unicode, es binario.
@Pacerier Sí, pero parece bastante claro a partir de otros comentarios que no todos son conscientes de ese hecho, así que lo estaba señalando.
Cuando pruebo estas instrucciones en macOS Catalina, aparece el error "No se pudo abrir el documento ".DS_Store". No tienes permiso.
Si obtiene el error "No tiene permiso", asegúrese de que la Terminal tenga acceso al sistema de archivos .

Hay una excelente redacción y algunas soluciones más sencillas publicadas en http://ponderthebits.com/2017/01/mac-dumpster-diving-identifying-deleted-file-references-in-the-trash-ds_store-files-part- 1/

Incluyendo esta terminal de una sola línea para convertir un .DS_Storearchivo a (principalmente) texto:

xxd -p <path/to/.DS_Store> | sed 's/00//g' | tr -d '\n' | sed 's/\([0-9A-F]\{2\}\)/0x\1 /g' | xxd -r -p | strings | sed 's/ptb[LN]ustr//g'
En lugar de duplicar una respuesta anterior , tal vez podría expandir el comando para devolver específicamente la ubicación Volver a colocar, ¿cuál sería más útil para esta pregunta individualmente?
Estoy "duplicando" mi propia respuesta, que publiqué en 3 hilos relevantes que no proporcionaron una solución que me funcionara. Solo trataba de ahorrarles a otras personas la hora de búsqueda que tenía que hacer. Lo siento si estoy haciendo esto mal.
Lo entiendo y no has hecho nada malo, solo pensé que podría ser útil adaptar este a algo más específico para la pregunta en particular. Además, al proporcionar el enlace en mi comentario anterior, la otra pregunta ahora se muestra en la lista de preguntas vinculadas a la derecha que podría ser útil para otros.
el resultado es poco satisfactorio.

La información sobre la ubicación original se almacena en el archivo DS_Store . En una versión anterior de OS X , se almacenaba en texto sin formato y ahora en formato binario. Estos formatos no están documentados por Apple, sin embargo, existe una herramienta creada por Wim L que puede leerlos.

La herramienta está escrita en Perl, Mac::Finder::DSStoreel proyecto proporciona rutinas para leer y escribir los .DS_Storearchivos generados por macOS.

Según el compromiso inicial, la herramienta anterior se basa en el trabajo de Mark Mitrovai más la propia investigación del autor.

El uso examples/dsstore_dump.plintentaría volcar los registros de un archivo almacenado en un formato más legible por humanos.

Ejemplo de uso:

$ perl dsstore_dump.pl ~/.Trash/.DS_Store

    &makeEntries("foo.png",
        ptbL => "Users/username/Desktop/",
        ptbN => "foo.png"
    ),

Consulte: repositorio dsstore en hhhh.org y repositorio anterior en GitHub .

El servidor de repositorios hhhh.org está devolviendo un error interno del servidor. Esta respuesta supone un conocimiento de programación bastante avanzado e implica muchos pasos. Las instrucciones paso a paso serían útiles.

'Devolver' el archivo, use la función de búsqueda para buscar el archivo, cuando encuentre su archivo, haga clic con el botón derecho en él y seleccione "Abrir carpeta adjunta"

¿Qué pasa si el mismo nombre de archivo aparece más de una vez en el sistema de archivos? Este enfoque fallará en ese caso. Es mejor leer los metadatos que OS X está leyendo para determinar la ubicación 'Retroceder' en primer lugar.
@IanC., Pero esta opción de verdad nebulosa parece ser la única opción ahora que dsstore es binario
Fuzzytruth quiero decir...
😂😂😂😂😂😂😂😂