2011-03-27 2 views

Répondre

0

Depuis MobileMe stocke les certificats et les clés publiques/privées dans le trousseau, vous pouvez utiliser

security find-identity -v 

Pour générer une liste d'identités valides, d'où vous pouvez extraire le nom d'utilisateur MobileMe sur l'identité avec (MobileMe Sharing Certificate) en son nom.

Pour ce faire, je ne pouvais venir avec ce travail, bien que la solution laide qui utilise sed pour imprimer les caractères entre les guillemets doubles et awk pour imprimer uniquement le nom d'utilisateur:

security find-identity -v | grep MobileMe | sed -n 's/\(.*\)\"\(.*\)\"\(.*\)/\2/p' | awk '{print $1}' 

(Si quelqu'un trouve une solution plus élégante pour cela, je serais heureux d'entendre!)

1

L'extrait suivant ferait-il ce que vous demandez?

dscl localhost -readpl /Local/Default/Users/$(id -un) dsAttrTypeNative:LinkedIdentity mac.com | grep -A1 '>name<' | sed -n 's/.*string>\(.*\)<\/string>.*/\1/p' 

Le premier élément se lit l'identité liée mac.com dict de services d'annuaire pour l'utilisateur qui effectue la requête, l'élément suivant trouve le champ Nom et le dernier élément prend le nom de .Mac de l'utilisateur et l'affiche.

pour le mettre dans le presse-papiers, vous émettez cette commande, avec la fin suivante:

dscl localhost -readpl /Local/Default/Users/$(id -un) dsAttrTypeNative:LinkedIdentity mac.com | grep -A1 '>name<' | sed -n 's/.*string>\(.*\)<\/string>.*/\1/p' | pbcopy 

qui copie la valeur dans le presse-papiers (que peu j'ai raté dans la question précédente)

+0

Merci c'est tout! – Lapaev

Questions connexes