Onde as imagens armazenadas estão sendo mostradas na minha proteção de tela?

0

Eu não estou realmente familiarizado com o Mac, mas eu tenho um amigo que tem esse problema (ela é uma pessoa do mac, mas não uma pessoa de computador), então pensei em dar uma chance.

O problema é que ela tem algumas fotos antigas que aparecem na rotação do protetor de tela - ela realmente quer salvá-las / fazer backup delas, mas parece que não conseguimos encontrá-las no computador dela.

Eles não estão no iPhoto, e uma pesquisa por todas as imagens na caixa não as ativa.

Olhando as propriedades do sistema para a apresentação de slides do protetor de tela, você pode ver uma listagem das fotos, mas não há como saber onde elas estão armazenadas (pelo menos que eu pude encontrar). Clique e clique duas vezes para abri-lo em uma pequena janela, não consigo clicar com o mouse e tentei todos os cliques de símbolo que pude ver no teclado - sem amor.

Alguém pode me dizer onde as fotos na rotação do protetor de tela estão armazenadas e por que elas podem não aparecer em uma pesquisa completa por computador para todas as imagens?

    
por Eli 18.06.2012 / 20:03

1 resposta

4

O nome da pasta é dado em Preferências do Sistema »Desktop & Proteção de tela »Proteção de tela . Se isso não for suficiente para localizá-lo, você tem duas opções:

  1. Decodifique os dados codificados, especificando onde, no sistema de arquivos, a pasta está localizada
  2. Monitorar acessos ao sistema de arquivos enquanto imagens dessa pasta são exibidas.

Decodifique os dados

A localização é armazenada em ~/Library/Preferences/ByHost/com.apple.screensaver.*.plist , * sendo um UUID.

Agora, execute o seguinte comando no Terminal:

/usr/libexec/PlistBuddy -c 'Print moduleDict:fileRef' $( ls -t ~/Library/Preferences/ByHost/com.apple.screensaver.*.plist | grep -v slideshow | head -n1 ) | grep -oaE 'file://[^[:cntrl:]]+/'

Primeiro, obterá o arquivo com.apple.screensaver.*.plist mais recente que não contém slideshow em seu nome e lerá seu conteúdo: a entrada relevante do arquivo da lista de propriedades é moduleDict:fileRef .

Agora, o valor de retorno (muitos dados binários) é filtrado para um URL de arquivo. Isso é impresso. No meu sistema, parece assim:

file:///Users/danielbeck/Pictures/

O caminho, é claro, é /Users/danielbeck/Pictures .

Monitorar o sistema de arquivos

Abra Preferências do Sistema »Desktop & Screen Saver »Screen Saver e selecione a pasta que você deseja localizar para ver uma prévia.

Agora, ao deixar essa janela aberta, abra uma janela do Terminal e execute o seguinte:

sudo opensnoop | grep -v '/.vol' | grep "System Pref"

Digite sua senha e aguarde. Ele imprimirá os caminhos para os arquivos de imagem à medida que forem carregados (quando um arquivo estiver sendo exibido, o próximo já estará carregado). Alguns dos arquivos listados são falsos positivos , mas devem ser fáceis de reconhecer:

501  77313 System Preferen  16 /Users/danielbeck/Pictures/Icons/fugue-icons-2.0/icon/contrast-small.png 
501  77313 System Preferen  16 /Users/danielbeck/Pictures/Icons/Crystal Clear/22x22/actions/ok.png 
501  77313 System Preferen  16 /System/Library/ColorSync/Profiles/sRGB Profile.icc 
501  77313 System Preferen  16 /Users/danielbeck/Pictures/Icons/GNU Lesser General Public License/nuvola/64x64/mimetypes/tgz.png 
501  77313 System Preferen  16 /Users/danielbeck/Pictures/Icons/crystal_project/32x32/devices/pipe.png 

Use isso para localizar o caminho para a pasta de imagens.

    
por 18.06.2012 / 21:14