Respuestas:
Mac OS X 10.5+ almacena las imágenes de las cuentas de los usuarios dentro del Servicio de directorio con la excepción de una cuenta que no ha modificado su imagen de usuario desde la primera vez que se creó. Cuando se creó por primera vez, una cuenta contiene un atributo 'Imagen' en su registro de usuario que es una ruta a la imagen en cuestión. Esto se puede leer usando el dscl
comando ( dscl . -read /Users/${USER} Picture
).
Si un usuario ha modificado su imagen de usuario en cualquier momento, la imagen de la cuenta (también conocida como versión recortada, si corresponde) se almacena en el atributo 'JPEGPhoto' de su registro de usuario.
Los archivos originales se pueden encontrar en /Library/User Pictures
si está buscando una imagen proporcionada por Apple, mientras que sus archivos originales personales se deben encontrar en ~/Library/Images/iChat Recent Pictures/
. Si los archivos se eliminan de la iChat Recent Pictures
carpeta, no afectará en absoluto la imagen de su cuenta de usuario.
Si desea extraer una versión de la imagen de su cuenta, puede hacerlo ejecutando el siguiente comando
dscl . -read /Users/${USER} JPEGPhoto | tail -1 |
xxd -r -p > ${HOME}/Desktop/accountImage.jpg`
La resolución puede variar según el tamaño original de la foto y la versión del sistema operativo que esté utilizando cuando se guarde.
Si está ejecutando Mac OS X 10.4, mi memoria me falla, ya que no recuerdo si la imagen del usuario se almacenó en NetInfo o no.
dscl . -read /Users/short_username JPEGPhoto | tail -1 | xxd -r -p > /PATH/TO/accountImage.jpg
: funciona como se anuncia , solo que obtiene una versión de 256x256 px de la imagen de su cuenta. :)
Estaba teniendo dificultades para encontrar el caché de imágenes de la cuenta en Mountain Lion 10.8.3. No fueron encontrados en
~/Library/Caches/com.apple.iChat/Pictures
o
~/Library/Images/iChat Recent Pictures/
Presumiblemente esto se debe a que iChat se convirtió en Mensajes en Mountain Lion, así que utilicé la herramienta de línea de comandos fs_usage
para encontrarlos. Al ejecutar el comando
sudo fs_usage -w | grep .tiff
Y luego, al hacer clic y configurar una nueva imagen de la cuenta, puede ver la ruta del archivo que se escribe en el disco cuando cambia las imágenes de la cuenta.
Resulta que en mountain lion 10.8.3 las fotos recientes de la cuenta se han movido a:
~/Library/Containers/com.apple.ImageKit.RecentPictureService/Data/Library/Images/Recent Pictures/
~/Library/Containers/com.apple.ImageKit.RecentPictureService/Data/Library/Images/Recent Pictures/
trabajó para Mavericks
Encontré las imágenes predeterminadas en /Library/User Pictures
Hay seis subdirectorios en este directorio. Puede poner su propio conjunto de imágenes como parte de la colección predeterminada.
Cree un nuevo subdirectorio vacío con su nombre y dado que este es un directorio fuera de su cuenta y puede ser accedido por cualquier usuario, deberá ingresar su contraseña de administrador.
Luego copie y pegue sus imágenes en este nuevo subdirectorio, ingresando nuevamente su contraseña de administrador.
Sus propias imágenes ahora deberían aparecer en la colección predeterminada. Luego tendrá que ir a la aplicación de contactos y cambiar su foto. Luego, vaya a Usuarios y grupos en las preferencias del sistema y cambie las fotos. Para cambiar las fotos, seleccione editar y luego predeterminado y luego desplácese hacia abajo.
En Mac OS X 10.8.2 Mountain Lion, existen como archivos que son una mezcla de jpegs y tiffs en mi Mac. Por lo tanto, se pueden copiar a otra ubicación.
El conjunto completo de fotos de usuario se encuentra en dos ubicaciones diferentes. Sin embargo, la foto de usuario en cuestión no se correlaciona necesariamente con la carpeta de usuario respectiva. Entonces es un poco peculiar.
Mire: Macintosh HD / Users / user0 / Library / Images / iChat Recent Pictures / Por ' user0 ' me refiero al nombre del primer usuario definido en el sistema (consulte el contexto a continuación). En esta ubicación hay 3 fotos de usuario, para 3 de mis 4 usuarios. 3 jpegs, todos de buena calidad. Curiosamente, es para todos los usuarios, excepto para user0. Los jpegs se denominan los nombres exactos de la siguiente manera: 'Recent 1.jpg', 'Recent 2.jpg' y 'Recent 3.jpg'
Para user0, esta foto está en: Macintosh HD / Library / Caches / Es un tiff, de mala calidad. El tiff se llama exactamente 'com.apple.user501picturecache.tiff'
Es importante destacar que aquí está el contexto del sistema anterior: - Un Apple iMac 20 "a principios de 2009 que originalmente ejecutó Mac OS X 10.5 Leopard - El primer usuario definido fue user0. Ni el nombre ni la foto han sido cambiados. - Todos los demás los usuarios siguieron poco después. Nuevamente, ni los nombres ni las fotos han sido cambiados. - Se ha actualizado con cada nuevo Mac OS X cuando se lanzó. - Actualmente se ejecuta Mac OS X 10.8.2 Mountain Lion.
Nota: Cuando actualicé a Lion, recuerdo que la foto user0 no se veía tan bien al iniciar sesión. Parecía peor calidad. Entonces algo sucedió allí. Espero que Lion haya reorganizado donde estaban las fotos e hizo algo con las fotos; no tengo pruebas de esto, es solo una corazonada.
Esa es la forma de encontrarlo en OS X 10.8.3:
~/Library/Containers/com.apple.ImageKit.RecentPictureService/Data/Library/Images/Recent Pictures/
Running Snow Leopard 10.6.8
He encontrado mi imagen capturada para el inicio de sesión del usuario en la siguiente ubicación. Tanto el original como el recortado se encontraron en~/Library/Caches/com.apple.iChat/Pictures
Si hace clic en el icono en la página de preferencias "Cuentas", aparece un menú contextual que ofrece "Editar imagen ..." como la opción más destacada. Esto abre un cuadro de diálogo que, al menos en mi caso, muestra una versión más grande de mi icono de usuario. Supongo que para el propósito específico de crear un ícono de mensajería, sería factible simplemente capturar esta imagen.
Es cierto que, sin tener los antecedentes técnicos para responder la pregunta real, realmente no estoy seguro de si los iconos de usuario reales están almacenados en un archivo normal. Si este archivo estuviera ubicado dentro de su cuenta de usuario (es decir, ˜ / Biblioteca), la página de preferencias tendría que rastrearse profundamente en su cuenta para mostrar el icono si otro usuario simplemente abre la página de preferencia "Cuenta".
Si, OTOH, el archivo se almacenara en algún lugar de / Library, probablemente sería difícil establecer el icono individualmente para cada usuario que no tenga derechos de administrador. Alguien más arrojar algo de luz sobre esto, por favor.
dscl
archivos .plist almacenados en /var/db/dslocal
)
Sobre la base de todas las respuestas anteriores, aquí está la mía:
dscl . -read ~$USER JPEGPhoto | xxd -p -r > $USER.jpg
También aquí hay algo principalmente original que he encontrado:
sudo plutil -convert xml1 -o - /var/db/dslocal/nodes/Default/users/$USER.plist |
vim '+/>j/+3,/>j//<\/d/-1j | .!base64 -D > $USER.jpg' '+q!' -
Incluso si es mucho más complicado, puede ser útil, porque plutil
también está disponible en otras plataformas. Convierte el plist binario con la información del usuario a xml, luego usa vim para seleccionar la parte con la imagen y finalmente la decodifica de base64 a jpg.