Onde o OS X armazena a foto de perfil que você tira quando cria uma conta pela primeira vez?


10

Quando você cria sua conta de login no OS X, ela tira uma foto sua. Onde essa imagem é armazenada? Não consigo encontrar em ~/Picturesou ~/Library.


Você deseja substituir a foto ou apenas deseja saber onde ela deve ser usada?
Philip Regan

Minha esposa gosta da foto que tirou daqui. Ela quer uma cópia para usar em outro lugar.
Ian C.

Respostas:


15

A foto pode ser encontrada na pasta / Library / Caches, se você ainda não tiver limpado essa pasta. Caso contrário, eu recomendo digitar:

dscl . -read /Users/short_username JPEGPhoto | tail -1 | xxd -r -p > 
/PATH/TO/accountImage.jpg

em uma linha da janela do Terminal, da brilhante resposta de Chealion aqui . No exemplo acima, uma cópia JPEG será salva em /PATH/TO/accountImage.jpg.


Com a ressalva de que o usuário não limpou isso (como eu faço todos os meses), mesmo que a imagem da minha conta permaneça a mesma.
Philip Regan

Esta resposta é mais válida no Lion? O comando é bom, mas falha na maioria das minhas máquinas 10.7.3 e 10.7.4 para gerar um jpg viável para contas com fotos personalizadas.
bmike

1
para esclarecer short_username === YOUR_USERNAME. funciona como uma brisa
Connor Sanguessuga

2

A menos que sua conta seja uma conta de rede de um servidor, como o OSX Server, usando serviços de diretório (ou AD no Windows ou LDAP no * nix), ela será armazenada no arquivo plist que armazena os dados dos serviços de diretório local no seu Mac.

Antes do Lion, esses arquivos eram simplesmente arquivos XML formatados em texto armazenados como shortname.plist no diretório / private / var / db / dslocal / nodes / users

A imagem é codificada como um arquivo JPEG sob a chave:

    <key>jpegphoto</key>
    <array>
            <data>
            /9j/4AAQSkZJRgABAQAAAQABAAD/4QBARXhpZgAATU0AKgAAAAgAAYdpAAQA
            AAABAAAAGgAAAAAAAqACAAQAAAABAAACAKADAAQAAAABAAACAAAAAAD/2wBD

Se você selecionou uma imagem em estoque em vez de uma imagem personalizada, poderá localizar esse arquivo com o seguinte comando:

    dscl . -read /Users/shortname Picture

O sistema também armazena em cache mais do que algumas fotos anteriores, para que você possa voltar para uma imagem favorita usando as ferramentas gráficas de preferência do sistema. Se seu plist estiver armazenado em formato binário, você poderá usar um comando como este para despejar uma versão xml do arquivo binário em / tmp:

    plutil -convert xml1 shortname.plist -o /tmp/shortname.plist

1

dê uma olhada em ~ / Library / Images / iChat Fotos Recentes


Não há ~/Library/Images/iChat Recent Picturesdiretório. Eu encontrei, ~/Library/Application\ Support/AddressBook/Images/mas o único arquivo lá não é um arquivo de imagem.
Ian C.

Também olhei para lá e não encontrei nada. Essa é estranha, com certeza. Pode ser um arquivo invisível para ocultá-lo de caracteres nefastos como nós, já que o sistema o usa em vários lugares.
Philip Regan

caramba ... parecia estar lá para a minha foto de perfil atual. Você pode tentar fs_usage ao acessá-lo e ver se isso revela a localização. #
Kevin Kevin

-1

Obter imagem do perfil

  1. Abrir nova janela do terminal
  2. Adicione o seguinte comando

dscl. -read $ (pwd) JPEGPhoto | cauda -1 | xxd -r -p> $ (pwd) /Pictures/profile-photo.jpg

Colocar imagem no perfil

insira a descrição da imagem aqui

  1. Abra o painel de preferências "Usuários e grupos", como de costume
  2. Arraste e solte um arquivo de imagem na miniatura existente da foto do perfil
  3. Ajuste conforme necessário e clique em "Concluído" para definir a imagem como a foto do perfil.


-2

abrir localizador, clique em: comando, shift, G

tipo:

~ / Biblioteca / caches / com.skype.skype

depois clique na pasta intitulada como seu nome de usuário .

depois clique na pasta SKAvatar Cache .

deve ser a primeira imagem.

Boa sorte!


2
Isso não responde à pergunta do OP.
Scot
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.