Gestion de l'icône Recopie d'écran dans la barre de menu Mac
La recopie d'écran sur Mac utilise la technologie AirPlay d'Apple pour afficher sans fil le contenu de votre écran Mac sur des appareils compatibles comme Apple TV ou les téléviseurs intelligents compatibles AirPlay. Pour les administrateurs gérant plusieurs systèmes Mac, contrôler la visibilité de l'icône Recopie d'écran dans la barre de menu peut aider à rationaliser l'interface utilisateur et maintenir la cohérence entre les appareils.
Ce guide fournit des scripts shell pour afficher ou masquer programmatiquement l'icône Recopie d'écran dans la barre de menu Mac, particulièrement utile pour la gestion de flotte et les scénarios de déploiement automatisé.
Comprendre la Recopie d'écran
La recopie d'écran vous permet de :
- Afficher l'écran de votre Mac sur Apple TV ou des téléviseurs intelligents compatibles
- Faire du mirroring de présentations lors de réunions
- Diffuser du contenu sur des écrans plus grands
- Partager votre écran sans fil dans le même réseau
L'option Recopie d'écran peut être contrôlée via les Réglages Système, mais pour une gestion automatisée sur plusieurs appareils, les scripts shell offrent une solution plus efficace.
Prérequis
Avant d'exécuter ces scripts, assurez-vous d'avoir :
- Privilèges administrateur sur le Mac
- Accès au Terminal
- macOS 10.15 ou ultérieur
- Compréhension de base des scripts shell
Script pour afficher l'icône Recopie d'écran
Ce script rend l'icône Recopie d'écran visible dans la barre de menu :
#!/bin/bash
# Obtenir l'utilisateur actuel et son UID
CurrentUser=$(ls -l /dev/console | awk '/ / { print $3 }')
CurrentUserUID=$(id -u "$CurrentUser")
# Activer la Recopie d'écran dans la barre de menu
launchctl asuser $CurrentUserUID sudo -iu "$CurrentUser" defaults write com.apple.airplay showInMenuBarIfPresent -int 1
echo "L'icône Recopie d'écran a été activée dans la barre de menu"
Ce que fait ce script :
- Identifie l'utilisateur actuel : Utilise
/dev/consolepour déterminer qui est connecté - Obtient l'ID utilisateur : Récupère l'ID numérique de l'utilisateur actuel
- Applique le paramètre : Utilise
launchctl asuserpour exécuter la commande defaults dans le contexte de l'utilisateur - Active l'icône : Définit
showInMenuBarIfPresentà1pour afficher l'icône
Script pour masquer l'icône Recopie d'écran
Ce script masque l'icône Recopie d'écran de la barre de menu :
#!/bin/bash
# Obtenir l'utilisateur actuel et son UID
CurrentUser=$(ls -l /dev/console | awk '/ / { print $3 }')
CurrentUserUID=$(id -u "$CurrentUser")
# Désactiver la Recopie d'écran dans la barre de menu
launchctl asuser $CurrentUserUID sudo -iu "$CurrentUser" defaults write com.apple.airplay showInMenuBarIfPresent -int 0
echo "L'icône Recopie d'écran a été masquée de la barre de menu"
Ce que fait ce script :
- Identifie l'utilisateur actuel : Même processus que le script d'affichage
- Obtient l'ID utilisateur : Récupère l'ID numérique de l'utilisateur
- Applique le paramètre : Utilise
launchctl asuserpour le bon contexte utilisateur - Masque l'icône : Définit
showInMenuBarIfPresentà0pour masquer l'icône
Instructions d'utilisation
Exécution des scripts
- Enregistrez le script dans un fichier (ex.
afficher_recopie_ecran.shoumasquer_recopie_ecran.sh) - Rendez-le exécutable :
chmod +x afficher_recopie_ecran.sh - Exécutez le script :
./afficher_recopie_ecran.sh
Vérification
Après avoir exécuté l'un des scripts, vous pouvez vérifier les changements :
- Vérifiez la barre de menu : L'icône Recopie d'écran devrait apparaître ou disparaître selon le script exécuté
- Vérifiez les Réglages Système :
- Allez dans Réglages Système > Centre de contrôle > Recopie d'écran
- L'option "Toujours afficher dans la barre de menu" devrait refléter l'action du script
Utilisation avancée
Vérification du statut actuel
Vous pouvez vérifier le statut actuel de l'icône Recopie d'écran :
#!/bin/bash
CurrentUser=$(ls -l /dev/console | awk '/ / { print $3 }')
CurrentUserUID=$(id -u "$CurrentUser")
status=$(launchctl asuser $CurrentUserUID sudo -iu "$CurrentUser" defaults read com.apple.airplay showInMenuBarIfPresent 2>/dev/null)
if [ "$status" = "1" ]; then
echo "L'icône Recopie d'écran est actuellement affichée dans la barre de menu"
elif [ "$status" = "0" ]; then
echo "L'icône Recopie d'écran est actuellement masquée de la barre de menu"
else
echo "Le paramètre de la barre de menu Recopie d'écran n'est pas configuré"
fi
Notes de compatibilité
- macOS 12.0 et versions antérieures : Le paramètre se trouve dans Préférences Système > Dock et barre de menu > AirPlay
- macOS 13.0 et versions ultérieures : Le paramètre se trouve dans Réglages Système > Centre de contrôle > Recopie d'écran
- Modification utilisateur : Les utilisateurs peuvent modifier manuellement ce paramètre depuis les Réglages Système, remplaçant la configuration du script
Bonnes pratiques
- Testez d'abord : Toujours tester les scripts sur un seul appareil avant le déploiement en masse
- Sauvegardez les paramètres : Envisagez de sauvegarder les paramètres actuels avant de faire des changements
- Communication utilisateur : Informez les utilisateurs des changements apportés à leur configuration de barre de menu
- Documentation : Conservez des enregistrements des appareils qui ont quelles configurations
- Audits réguliers : Vérifiez périodiquement que les paramètres restent conformes aux intentions
Dépannage
Problèmes courants
- Permission refusée : Assurez-vous que le script a des privilèges sudo
- Utilisateur non trouvé : Le script peut échouer s'il est exécuté quand aucun utilisateur n'est connecté
- Paramètre non appliqué : Essayez de vous déconnecter et reconnecter pour rafraîchir la barre de menu
Débogage
Ajoutez du débogage à vos scripts :
#!/bin/bash
# Activer le débogage
set -x
CurrentUser=$(ls -l /dev/console | awk '/ / { print $3 }')
echo "Utilisateur actuel : $CurrentUser"
CurrentUserUID=$(id -u "$CurrentUser")
echo "UID utilisateur : $CurrentUserUID"
# Continuer avec le reste du script...
Considérations de sécurité
- Ces scripts nécessitent des privilèges administrateur
- Toujours valider la source des scripts avant exécution
- Envisagez d'implémenter la journalisation pour les pistes d'audit
- Testez les scripts dans un environnement contrôlé en premier
Conclusion
La gestion de la visibilité de l'icône Recopie d'écran dans la barre de menu Mac via des scripts shell fournit aux administrateurs des outils puissants pour maintenir des interfaces utilisateur cohérentes à travers leur flotte Mac. Que vous déployiez sur un seul appareil ou gériez des centaines de Mac, ces scripts offrent une solution automatisée et fiable.
N'oubliez pas de tester minutieusement tous les scripts dans votre environnement et de considérer l'expérience utilisateur lors de modifications d'interface. Avec une implémentation appropriée, vous pouvez rationaliser votre flux de travail de gestion Mac tout en maintenant la flexibilité dont les utilisateurs ont besoin pour leur travail quotidien.