Como saber de onde um item na Lixeira veio?

14

A lixeira do Mac OS X 10.6 mostra uma opção "Colocar de volta" para arquivos que foram descartados após a instalação da 10.6. No entanto, ele não mostra onde o arquivo será colocado novamente.

Então: usando o Finder, existe alguma maneira de saber de onde um item na lixeira veio?

(Eu sei que os locais originais estão armazenados em ~/.Trash/.DS_Store , por isso, se eu realmente precisar sei de onde um arquivo veio, então eu posso descobrir usando algo como hexdump .)

    
por Arjan 23.10.2009 / 12:49

3 respostas

5

Eu vi esse problema e fiquei intrigado. Acabei escrevendo uma ferramenta rápida baseada em esta função e a envolvi em um aplicativo AppleScript.

link

Cole-o na barra de ferramentas e ele deverá informar o caminho do item selecionado. Eu não faço promessas. :)

Ele não deve pedir sua senha. Se isso acontecer, algo é estranho. Você ainda pode abrir o aplicativo com o Editor AppleScript, se quiser ver a fonte AppleScript.

Duas questões principais:

  • O Finder parece atualizar o arquivo .DS_Store periodicamente, por isso pode falhar nos itens adicionados recentemente à Lixeira.
  • Ele só pode manipular um item por vez.
por 24.10.2009 / 17:23
2

Você pode usar a ferramenta dsstore_dump.pl que pode ler um armazena os registros do arquivo em formato legível por humanos.

Faz parte do projeto Mac-Finder-DSStore escrito em perl por Wim L que fornece rotinas para ler e gravar os arquivos .DS_Store gerados pelo OS X. Veja também: dsstore_dump.pl no GitHub e no meu fork .

Uso da amostra:

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

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

A instalação desta ferramenta é abordada no arquivo README.

Você também pode executar o script acima usando o seguinte one-liner no seu terminal:

perl <(curl -s https://raw.githubusercontent.com/kenorb/binfiles/master/dsstore_dump.pl) ~/.Trash/.DS_Store 

Relacionados: Como posso verificar de onde o arquivo no .Trash foi removido?

    
por 04.05.2015 / 21:08
0

Existe um ótimo artigo e algumas soluções mais fáceis publicadas em

Incluindo este one-liner Terminal para converter um arquivo .DS_Store para (principalmente) texto:

xxd -p <path/to/.DS_Store> | sed 's/00//g' | tr -d '\n' | sed 's/\([0-9A-F]\{2\}\)/0x /g' | xxd -r -p | strings | sed 's/ptb[LN]ustr//g'
    
por 28.08.2017 / 00:32