Réponses:
Mac OS X 10.5+ stocke les images de compte de l'utilisateur dans le service d'annuaire, à l'exception d'un compte qui n'a pas modifié l'image de l'utilisateur depuis sa création. Lorsqu'il est créé pour la première fois, un compte contient un attribut "Image" dans son enregistrement d'utilisateur, qui constitue un chemin d'accès à l'image en question. Cela peut être lu en utilisant la dscl
commande ( dscl . -read /Users/${USER} Picture
).
Si un utilisateur a modifié sa photo à tout moment, la photo du compte (aussi appelée version recadrée, le cas échéant) est stockée dans l'attribut «JPEGPhoto» de son enregistrement utilisateur.
Les fichiers originaux peuvent être trouvés à l' /Library/User Pictures
adresse si vous recherchez une photo fournie par Apple, alors que vos fichiers originaux personnels doivent être trouvés à l'adresse ~/Library/Images/iChat Recent Pictures/
. Si les fichiers sont supprimés du iChat Recent Pictures
dossier, cela n’affectera en aucun cas l’image de votre compte utilisateur.
Si vous souhaitez extraire une version de votre image de compte, vous pouvez le faire en exécutant la commande suivante
dscl . -read /Users/${USER} JPEGPhoto | tail -1 |
xxd -r -p > ${HOME}/Desktop/accountImage.jpg`
La résolution peut varier en fonction de la taille d'origine de la photo et de la version du système d'exploitation que vous utilisez lors de son enregistrement.
Si vous utilisez Mac OS X 10.4, ma mémoire me manque car je ne me souviens pas si la photo de l'utilisateur a été stockée dans NetInfo ou non.
dscl . -read /Users/short_username JPEGPhoto | tail -1 | xxd -r -p > /PATH/TO/accountImage.jpg
- fonctionne comme annoncé , juste que vous obtenez une version 256x256 px de votre image de compte. :)
J'avais du mal à trouver la mémoire cache d'images du compte dans Mountain Lion 10.8.3. Ils n'ont pas été trouvés dans
~/Library/Caches/com.apple.iChat/Pictures
ou
~/Library/Images/iChat Recent Pictures/
C'est probablement parce qu'iChat est devenu Messages dans Mountain LionSo. J'ai utilisé l'outil de ligne de commande fs_usage
pour les rechercher. En exécutant la commande
sudo fs_usage -w | grep .tiff
Ensuite, en cliquant sur et en définissant une nouvelle image de compte, vous pouvez voir le chemin d'accès au fichier qui est écrit sur le disque lorsque vous modifiez les images de compte.
Il s'avère que dans le lion de montagne 10.8.3, les images récentes du compte sont passées à:
~/Library/Containers/com.apple.ImageKit.RecentPictureService/Data/Library/Images/Recent Pictures/
~/Library/Containers/com.apple.ImageKit.RecentPictureService/Data/Library/Images/Recent Pictures/
travaillé pour Mavericks
J'ai trouvé les images par défaut dans /Library/User Pictures
Il y a six sous-répertoires sous ce répertoire. Vous pouvez mettre votre propre ensemble d'images dans la collection par défaut.
Créez un nouveau sous-répertoire vide avec votre nom. Comme il s’agit d’un répertoire situé en dehors de votre compte et accessible à tout utilisateur, vous devrez entrer votre mot de passe administrateur.
Copiez et collez ensuite vos images dans ce nouveau sous-répertoire, en saisissant à nouveau votre mot de passe administrateur.
Vos propres images devraient maintenant apparaître dans la collection par défaut. Ensuite, vous devrez aller dans l'application Contacts et changer votre photo. Ensuite, allez dans Utilisateurs et groupes dans les préférences système et modifiez les photos. Pour modifier les photos, sélectionnez Modifier, puis Par défaut, puis faites défiler vers le bas.
Sur Mac OS X 10.8.2 Mountain Lion, ils existent sous forme de fichiers combinant jpeg et tiff sur mon Mac. Ainsi, ils peuvent être copiés vers un autre emplacement.
L'ensemble des photos des utilisateurs se trouvent à deux endroits différents. Cependant, la photo de l'utilisateur en question ne correspond pas nécessairement au dossier de l'utilisateur respectif. Donc, c'est un peu bizarre.
Regardez: Macintosh HD / Utilisateurs / user0 / Bibliothèque / Images / iChat Photos récentes / Par « user0 » Je me réfère au nom du premier utilisateur défini sur le système (voir ci - dessous contexte). À cet endroit se trouvent 3 photos d'utilisateurs, pour 3 de mes 4 utilisateurs. 3 jpegs, tous de bonne qualité. Curieusement, il s’applique à tous les utilisateurs à l’ exception de user0. Les jpegs sont appelés les noms exacts comme suit: 'Récent 1.jpg', 'Récent 2.jpg' et 'Récent 3.jpg'
Pour user0, cette photo est dans: Macintosh HD / Bibliothèque / Caches / C'est un tiff, qualité médiocre. Le tiff s'appelle exactement 'com.apple.user501picturecache.tiff'
Il est important de noter que voici le contexte système ci-dessus: - Un Apple iMac 20 "début 2009 exécutant à l'origine Mac OS X 10.5 Leopard. - Le premier utilisateur défini était l'utilisateur0. Le nom, ni la photo, n'ont été modifiés. - Tous les autres Encore une fois, ni les noms, ni les photos n’ont été modifiés - Il a été mis à jour à chaque nouveau Mac OS X lors de sa sortie - Exécution de Mac OS X 10.8.2 Mountain Lion.
Remarque: lors de la mise à jour de Lion, je me souviens que la photo de l'utilisateur 0 n'était pas aussi belle au moment de la connexion. Cela semblait de moins bonne qualité. Donc quelque chose est arrivé là-bas. Je m'attends à ce que Lion ait réarrangé les photos et apporté quelque chose à ces photos - je n'ai aucune preuve de cela, c'est juste une intuition.
C'est le moyen de le trouver sur OS X 10.8.3:
~/Library/Containers/com.apple.ImageKit.RecentPictureService/Data/Library/Images/Recent Pictures/
Running Snow Leopard 10.6.8
J'ai trouvé ma photo capturée pour la connexion de l'utilisateur à l'emplacement suivant. L’original et le recadré ont été trouvés dans~/Library/Caches/com.apple.iChat/Pictures
Si vous cliquez sur l'icône dans la page de préférences "Comptes", un menu contextuel apparaît proposant l'option "Modifier l'image ..." comme option la plus en haut. Cela ouvre une boîte de dialogue qui - du moins dans mon cas - montre une version plus grande de mon icône d'utilisateur. Je suppose que dans le but spécifique de créer une icône de messagerie, il serait possible de simplement effectuer une capture d'écran de cette image.
Certes, sans avoir les connaissances techniques pour répondre à la question, je ne suis vraiment pas sûr que les icônes des utilisateurs soient stockées dans un fichier normal. Si ce fichier se trouvait dans votre compte utilisateur (c'est-à-dire ˜ / Bibliothèque), la page de préférences devrait explorer en profondeur votre compte pour afficher l'icône, si un autre utilisateur ouvre simplement la page de préférences "Compte".
Si, OTOH, le fichier était stocké quelque part dans / Library, il serait probablement difficile de définir l'icône individuellement pour chaque utilisateur ne disposant pas de droits d'administrateur. Quelqu'un d'autre nous a éclairé, s'il vous plaît.
dscl
- les fichiers .plist stockés dans /var/db/dslocal
)
Sur la base de toutes les réponses précédentes, voici la mienne:
dscl . -read ~$USER JPEGPhoto | xxd -p -r > $USER.jpg
Aussi, voici quelque chose de très original que j'ai trouvé:
sudo plutil -convert xml1 -o - /var/db/dslocal/nodes/Default/users/$USER.plist |
vim '+/>j/+3,/>j//<\/d/-1j | .!base64 -D > $USER.jpg' '+q!' -
Même si c'est beaucoup plus compliqué, cela peut être utile, car il plutil
est également disponible sur d'autres plateformes. Il convertit la plist binaire contenant les informations utilisateur en xml, puis utilise vim pour sélectionner la partie avec l'image et la décode enfin de base64 en jpg.