Guide pour Apple IT: Introduction aux scripts Mac

Guide pour Apple IT: Introduction aux scripts Mac

dans ce guide convivial pour les débutants, nous allons vous guider à travers les blocs de construction des scripts Mac, puis nous verrons comment l’utilisation de scripts avec votre solution de gestion des appareils mobiles (MDM) peut l’aider à gérer plus efficacement les appareils appartenant à l’entreprise.

Voici un aperçu rapide de certains des sujets que nous aborderons:

  • qu’est-ce que les Scripts?
  • utilisation de Scripts avec une Solution MDM
  • commandes de Terminal vs Scripts Shell
  • Que sont les Shells: Bash vs Zsh?,
  • bases du script avec Bash

que sont les Scripts?

les Scripts sont de petits programmes informatiques qui rassemblent une série de commandes dans un seul fichier. Bien que la saisie de commandes dans le Terminal D’Apple se fasse généralement une par une, avec un script, vous pouvez exécuter une longue liste de commandes avec une seule interaction.

bien que vous n’utilisiez généralement pas de scripts Mac pour créer des programmes plus volumineux, vous pouvez les utiliser pour automatiser les comportements informatiques de routine. Par exemple, si vous avez une routine longue qui prend beaucoup de clics, vous pouvez écrire un script et le faire avec un seul.,

Apple le met bien dans son amorce de script Shell:

Écrire un script shell, C’est comme faire du vélo. Vous tombez et vous grattez beaucoup les genoux au début. Avec un peu plus d’expérience, vous devenez à l’aise de les conduire en ville, mais découvrez également rapidement pourquoi la plupart des gens conduisent des voitures pour de plus longs trajets.

le script Shell est généralement considéré comme un langage glue, idéal pour créer de petits morceaux de code qui relient d’autres outils ensemble. Bien que les scripts shell puissent être utilisés pour des tâches plus complexes, ils ne sont généralement pas le meilleur choix.,

Apprendre à écrire le script est similaire à l’apprentissage d’un langage de programmation. Vous commencez avec les bases et développez vos connaissances à partir de là.

donc, dans ce guide, nous allons nous concentrer sur les éléments constitutifs du script. Les informations que nous couvrons ici seront utiles dans de nombreux paramètres, mais nous allons finalement nous concentrer sur la façon dont les scripts peuvent vous aider à effectuer des actions sur plusieurs appareils à l’aide d’une solution MDM.

que peuvent faire les Scripts?

essentiellement, les scripts vous permettent de faire des choses compliquées rapidement, avec précision et facilement.,

  • rapidement parce que l’utilisation de scripts Mac dans un MDM peut automatiser des tâches fastidieuses, comme l’accès à un programme informatique sur 100 appareils de l’entreprise – avec zéro clic plutôt que 100.
  • précisément parce qu’un bon script exécutera une action définie de la même manière à chaque fois – tout en faisant confiance à une personne pour terminer la tâche manuellement pourrait entraîner des erreurs, des incohérences et de la confusion.
  • facilement parce que vous pouvez accomplir une tâche vraiment compliquée et nuancée avec une série de scripts simples qui la décomposent en petits morceaux.,

utiliser des Scripts avec une Solution MDM

utiliser des scripts seuls peut vous aider à gagner du temps, mais les utiliser avec une solution MDM, comme notre produit Kandji, ouvre beaucoup plus de puissance et de liberté. Après avoir écrit un script que vous aimez, vous pouvez l’exécuter via votre solution MDM pour l’appliquer à tous les appareils de votre entreprise.

la façon dont les scripts sont utilisés dans les solutions MDM diffère selon le produit, mais avec Kandji, vous pouvez les utiliser pour faire des choses comme personnaliser l’installation d’applications personnalisées pour répondre aux besoins exacts de votre entreprise., (Vous pouvez lire notre guide de déploiement d’applications Si vous avez besoin d’une introduction à ce sujet.)

dans ce cas, si votre entreprise souhaite installer une application personnalisée sur tous les appareils de l’entreprise, vous pouvez spécifier certaines actions de préinstallation ou de postinstallation en ajoutant des scripts à leurs zones de saisie respectives (voir dans l’image ci-dessous):

Scripts de préinstallation

Vous pouvez créer un script de préinstallation, Les scripts de préinstallation sont généralement utilisés pour:

  • effectuer des tâches de nettoyage qui seraient normalement effectuées manuellement avant de réinstaller un logiciel, telles que la suppression des licences, des caches, des fichiers de base de données, etc.
  • exécutez les fichiers de configuration. De nombreuses applications utilisent des options de déploiement en masse qui fonctionnent en trouvant des fichiers de configuration placés avant l’exécution du programme d’installation. Par exemple, vous pouvez utiliser un script de préinstallation pour créer un dossier particulier et écrire un fichier dans ce dossier contenant une sorte d’identifiant., Lorsque l’installation se produit, le programme d’installation détecte ces informations et les utilise pour configurer automatiquement l’application.

Scripts Postinstall

Vous pouvez également créer un script postinstall, qui est généralement utilisé pour configurer les préférences de l’application avant l’exécution du logiciel. Pour partager un exemple commun, vous pouvez utiliser un script posinstall pour configurer les préférences utilisateur pour Google Chrome et vous assurer que les mises à jour automatiques sont configurées.,

Comme vous pouvez l’imaginer, les scripts de ces comportements vous donne beaucoup plus de contrôle sur le processus d’installation, et il peut sauver votre équipe, beaucoup de temps s’ils devraient le faire manuellement autrement.

Scripts personnalisés

Kandji dispose également d’une fonctionnalité de Script personnalisé qui vous permet d’ajouter n’importe quel script pris en charge par macOS. Ces scripts Mac peuvent s’exécuter une fois par appareil ou en continu. Il existe également une option de script de remédiation que vous pouvez inclure en cas de besoin., Vous pouvez voir plus d’options disponibles sur la page de Script personnalisé de Kandji ci-dessous:

Building Blocks of Scripting

maintenant que nous avons une définition fonctionnelle de ce que sont les scripts et savons ce qu’ils peuvent accomplir, apprenons comment tout cela fonctionne. Dans cette section, nous allons décomposer certains des principaux éléments constitutifs du script Mac, y compris les commandes de Terminal, les scripts shell et deux shells courants.

que sont les commandes de Terminal?

Terminal est l’interface de ligne de commande (CLI) macOS., Il permet aux utilisateurs d’apporter des modifications avancées à leur Mac à l’aide de commandes, qui ne sont que des instructions à votre Mac concernant ce que vous voulez qu’il fasse.

source de l’Image: support.apple.com

Un mot d’avertissement, cependant: le Terminal est un outil incroyablement puissant. Recherchez et testez soigneusement les commandes avant de les exécuter et, si possible, testez-les avec une machine virtuelle au lieu d’une machine de production.

lorsque vous tapez des commandes dans Terminal, cela vous permet de communiquer avec un interpréteur ou un shell. L’interpréteur prend du code et le traduit en langage machine que le système d’exploitation peut comprendre.,

pour ouvrir Terminal, cliquez simplement sur « Applications”, ouvrez le dossier « Utilitaires”, puis double-cliquez sur L’application « Terminal”. Vous pouvez utiliser des commandes de Terminal pour tout ce que vous pouvez accomplir dans L’interface graphique – et bien plus encore.,

Voici quelques exemples de commandes:

  • Ajouter du texte à un document (si le document n’existe pas, un nouveau sera créé)
echo 'Welcome to my document!' > ~/Desktop/myDocument.txt
  • Créer un dossier dans un emplacement
mkdir ~/Desktop/myFolder
  • Déplacer un document à un endroit précis
mv ~/Desktop/myDocument.txt ~Desktop/myFolder
  • Ouvrez un document à partir d’un certain emplacement
open ~/Desktop/myFolder/myDocument.txt

C’est un excellent moyen de voir comment vous pouvez utiliser les commandes pour faire de votre Mac d’effectuer certains comportements, mais il n’est pas très pratique si vous souhaitez effectuer une série de tâches., Nous verrons comment les scripts rendent cela possible dans la section suivante.

que sont les Scripts Shell Mac?

bien sûr, brancher les commandes de Terminal une par une deviendra assez fastidieux lorsque vous essayez de déployer des modifications pour des centaines d’appareils Mac appartenant à l’entreprise. Ainsi, plutôt que d’exécuter des commandes individuelles comme notre exemple dans la dernière section, vous pouvez transformer toutes vos commandes en un seul script – un script shell – qui peut s’exécuter sans interaction directe. Cela facilite l’exécution de processus répétitifs ou en plusieurs étapes tout en minimisant les erreurs.,

un script shell est juste un fichier texte contenant des commandes UNIX (commandes qui parlent à votre système d’exploitation – macOS est un système D’exploitation basé sur UNIX). Tout ce que vous pouvez faire avec les commandes de Terminal que vous pouvez faire avec les scripts shell Mac, juste beaucoup plus facilement. Vous pouvez même automatiser les scripts shell avec des outils comme launchd.

Run Shell Script: Mac Terminal

Il est en fait assez simple d’exécuter un script shell. Si nous devions faire un script Mac à partir des commandes de Terminal introduites ci-dessus, nous aurions juste à faire ceci:

  1. Type #!/bin/bash dans la première ligne., Les deux premiers caractères, appelés un « shebang » ( # !), faites savoir au Terminal que vous tapez un script shell. Le reste de la ligne spécifie avec quel shell les scripts doivent s’exécuter. Dans ce cas, c’est bash, mais vous pouvez également spécifier « zsh”, qui est un autre shell que nous couvrirons également dans la section suivante.
  2. ajoutez les commandes dans un éditeur de script. Tout comme les traitements de texte sont spécialisés pour l’écriture, les éditeurs de script sont spécialisés pour les scripts, faisant des choses comme le codage couleur des mots de certaines catégories fonctionnelles et le marquage des erreurs., Il y a beaucoup d’éditeurs de script là-bas, mais deux des plus populaires (et gratuits) sont Atom et bbedit.
  3. enregistrez-le sous « myscript.bash” ou tout autre nom – assurez-vous de conserver l’extension du fichier (la partie après la période) étiqueté comme bash. Sinon, Terminal ne sera pas en mesure de l’exécuter correctement.
  4. Autoriser Terminal à exécuter votre script. Il vous suffit maintenant de donner au Terminal la permission d’exécuter votre script., Ne copiez pas et ne collez pas le contenu – vous devez dire à Terminal de rendre le fichier de script exécutable à l’aide de la commande chmod +x, par exemple:
    chmod +x ~/Desktop/myFolder/myscript.bash
  5. appuyez sur « Entrée” pour exécuter le script shell. Le Terminal de Mac s’occupera du reste!

C’est tout – le programme exécutera la liste des commandes dans l’ordre. Cela se produira probablement plus rapidement que vous ne pouvez le suivre, mais ce n’est qu’un autre avantage du script Mac – c’est vraiment rapide.,

avant de parler d’autres choses que vous pouvez faire avec des scripts, obtenons un aperçu de ce que sont les shells (comme « bash”, celui que nous avons utilisé dans cet exemple).

que sont les coquilles?

Lorsque vous ouvrez Terminal, le système lance un programme shell. Les Shells sont des interprètes de ligne de commande qui, en termes simples, signifient qu’ils prennent vos commandes et les donnent au système d’exploitation pour les mettre en action.

par défaut, Mac utilise zsh (z shell) ou bash (Bourne-again Shell) comme interpréteur de shell ou de ligne de commande. Le shell par défaut de votre Mac dépendra de l’itération de macOS que vous utilisez.,

  • zsh (Mac Catalina): si vous avez créé un nouveau compte utilisateur sur macOS Catalina beta ou version ultérieure, votre shell par défaut est zsh. les itérations macOS avant cette utilisation Bash.
  • bash (macOS antérieur): si vous utilisez macOS Mojave et versions antérieures, bash est votre shell par défaut.

que votre compte utilise un shell par défaut bash ou zsh Mac, vous pouvez le modifier en quelques étapes., Voici ce que vous devez faire:

  1. Cliquez sur le menu Apple
  2. Choisissez Préférences Système > Utilisateurs & Groupes
  3. Cliquez sur la serrure et entrez votre nom de compte et mot de passe.
  4. Contrôle-cliquez sur votre nom d’utilisateur dans la liste des utilisateurs > Choisissez Options Avancées
  5. Regardez le ”Login shell” dans le menu et choisir un shell
  6. Cliquez sur OK lorsque vous avez trouvé le shell que vous voulez

Bash vs, Zsh: Mac Scripting

Bash et zsh ont en fait beaucoup de fonctionnalités en commun, et vous pouvez passer de l’une à l’autre sans trop de courbe d’apprentissage. Donc, avant d’entrer dans ce qui les rend différents, voyons quelques endroits où ils se chevauchent.

  • commande Z: la commande Z permet aux développeurs de naviguer facilement dans leurs répertoires, leur donnant la possibilité de visiter un répertoire récemment ou fréquemment visité en tapant « z” suivi du nom du répertoire., C’est plus rapide que de taper l’emplacement complet comme nous avons dû le faire lorsque nous avons ouvert le document dans la section de commande du terminal.
  • complétion automatique: les deux shells incluent également une fonction de complétion automatique en ligne de commande. Pour utiliser cette fonctionnalité, il vous suffit de taper une commande, appuyez sur la touche » -”, puis appuyez sur tab. Vous verrez une liste d’options disponibles pour la commande, que vous pouvez parcourir jusqu’à ce que vous trouviez celle que vous voulez.,
  • Correction automatique: les deux shells utilisent une forme d’auto-correction, mais la fonctionnalité de bash doit d’abord être activée tandis que zsh a une fonction d’auto-correction intégrée qui détectera automatiquement les petites fautes de frappe.
  • personnalisation des couleurs: zsh et bash offrent de nombreux outils de personnalisation des couleurs qui facilitent la compréhension du script en un coup d’œil.

en ce qui concerne les différences, bash a été le shell par défaut pour les utilisateurs de macOS jusqu’à Catalina, et c’est toujours le shell le plus utilisé parmi les administrateurs informatiques., Parce que bash a un énorme suivi, il y a beaucoup de ressources là-bas, ce qui le rend idéal pour les débutants.

Bash fait partie de la famille des coquilles Bourne, une catégorie qui comprend également sh, ash, zsh et ksh. Il est chargé avec plus de fonctionnalités que nous ne pouvons en énumérer de manière réaliste ici, mais certaines de ses fonctions uniques incluent le bouclage, les constructions conditionnelles, les extensions tilde et brace et les alias.,

Zsh, le shell par défaut de Mac Catalina, en revanche, n’est pas aussi populaire que bash, mais il a toujours un énorme succès, y compris des frameworks open source tels que Oh My Zsh, et est largement loué pour ses fonctionnalités. Zsh offre des fonctionnalités uniques telles que la globalisation de fichiers, les modules chargeables, l’extension de chemin, les scripts de démarrage/arrêt, etc. Dans ce guide, nous allons principalement nous concentrer sur bash.

les bases de Bash

maintenant que nous comprenons comment fonctionnent les scripts et les shells, il est temps de passer en revue quelques conseils sur les scripts avec bash., Après cela, nous allons plonger dans les bases comme l’attribution de variables et l’écriture de conditions.

séparation des mots

l’un des premiers grands blocs de construction pour envelopper votre tête est la façon dont bash utilise les séparateurs de mots. En regardant des exemples de script, vous verrez des métacaractères comme ; et &. Ce ne sont que deux des sept caractères que bash utilise pour séparer les mots lors du script.

nous allons inclure une liste des sept ci-dessous. Quand vous les voyez, ne vous inquiétez pas. Ils ont juste garder tout organisé., Comme vous le verrez plus loin dans la section conditionals, le type de syntaxe utilisé dépend de ce que vous essayez d’accomplir.

  • (
  • )
  • <
  • >
  • ;
  • &
  • |

Utile de l’Organisation des Commandes

Bash vous donne également un certain nombre de commandes que vous pouvez utiliser pour organiser les fichiers. Nous avons couvert certains d’entre eux dans la section Terminal command, mais en voici quelques-uns:

  • mkdir (make directory) est utilisé pour créer un nouveau répertoire ou dossier.,
  • mv (move) est utilisé pour déplacer un ou plusieurs fichiers ou répertoires vers un autre endroit.
  • rm (remove) est utilisé pour supprimer les fichiers.
  • rmdir (remove directory) est utilisé pour supprimer un répertoire.

Affichage des Commandes

Si vous voulez faire plus que simplement de déplacer des fichiers, vous pouvez utiliser certaines de ces visualisation des commandes pour afficher les informations que les fichiers contiennent. Voici deux d’entre eux:

  • cat (concaténer) lit le contenu d’un ou plusieurs fichiers et l’affiche. C’est idéal pour les fichiers plus courts.,
  • less est une autre commande de visualisation idéale pour afficher des fichiers plus longs, car elle n’affiche qu’un seul écran d’informations à la fois et inclut des fonctionnalités de navigation utiles pour rechercher des mots spécifiques ou accéder à la page suivante ou précédente.

que sont les Variables?

Les Variables sont des espaces réservés nommés qui font référence à une certaine valeur. Lorsque vous tapez le nom de la variable, le système le traite comme si vous aviez tapé la valeur à laquelle il se réfère. Vous pouvez nommer des variables à l’aide de chiffres, de lettres, de noms de fichiers ou d’autres types de données.,

Les Variables facilitent l’écriture de scripts qui utilisent des morceaux de données spécifiques-même si ces données changent constamment, comme les noms d’utilisateur. Plutôt que d’écrire des commandes distinctes pour plusieurs variantes de noms d’utilisateur, vous pouvez simplement définir une variable nom d’utilisateur et l’utiliser comme espace réservé pour toutes les variantes que les utilisateurs peuvent utiliser.

L’attribution de variables est assez facile à faire. Il vous suffit de spécifier un nom de variable et une valeur, comme ceci:

Variable_Name=value

La Capitalisation n’a pas d’importance ici., Le nom et la valeur de la variable peuvent être à peu près ce que vous voulez, tels que:

x=1
var1=hello
var2=GOODBYE

cela dit, il y a quelques restrictions sur les mots ou les caractères que vous pouvez utiliser pour les variables (que nous couvrirons ensuite). Mais d’abord, il est important de noter que bash n’utilise pas d’espaces avant ou après le signe égal lors de l’attribution de variables.,

cela signifie Que vous ne pouvez pas affecter une variable avec des espaces, comme ceci:

Incorrect:

x = 1

Vous devez attribuer sans espaces, comme ceci:

Correct:

x=1

Cependant, vous pouvez utiliser des espaces dans les noms de variables en utilisant les guillemets, comme ceci:

Correct:

x="Number one"

il faut aussi mentionner que vous pouvez utiliser un Mac script pour dire Borne à renvoyer la valeur d’une variable à vous. Vous pouvez le faire de deux façons., Dans les deux exemples, « x” est la valeur de variable que vous recherchez:

$x
${x}

Vous pouvez également faire référence à une variable au résultat d’une commande, telle que:

variable1=$(Some Bash Command)

restrictions de Variable

alors, quelles sont ces restrictions variables que nous venons de mentionner? Bash a vingt « mots réservés » que vous ne pouvez pas utiliser pour les variables car ils sont déjà affectés à d’autres fonctions importantes dans le shell., Chaque fois que vous attribuez des variables, il vous suffit d’éviter ces mots et vous ne rencontrerez aucun problème avec votre script.

Voici:

  • ! et le temps
  • ]
  • { et }
  • si, ensuite, elif, else, et fi gratuite
  • de cas et de l’esac
  • sélectionnez et dans
  • tout, jusqu’à ce que, pour, faire, et de fait
  • fonction

Simple contre, Guillemets doubles

'

le texte encapsulé entre guillemets simples signifie qu’il contient strictement ce texte en lecture – il ne donnera pas de sens à des caractères spéciaux, tels que des variables ou des restrictions de variables.

"

guillemets préserve la valeur littérale de certains personnages, mais il peut contenir des variables ou des caractères ayant une signification particulière, y compris:

$
'
\
!

Le sens du personnage !, entre guillemets doubles est conservé uniquement lorsque l’extension de l’historique est activée, et \ doit être suivi d’un autre caractère spécial (ou d’une nouvelle ligne).

Quelles sont les Conditions?

La prochaine grande étape dans l’apprentissage des scripts Mac consiste à déterminer comment utiliser les conditions. Essentiellement, les conditionnelles sont des instructions if/then, qui définissent des conditions et voient ensuite si elles sont remplies (C’est-à-dire s’il est 6 heures du matin, alors dites « bonjour”).

dans bash, la syntaxe des instructions if/then ressemble à ceci:

if <condition>; then
<command(s)>
fi

décomposons cela.,

  1. commencez par « if” et suivez-le immédiatement avec ses conditions.
  2. utilisez un point-virgule pour séparer la condition « IF” et commencer la commande « THEN”. Cette commande n’aura lieu que si la condition  » IF  » est remplie.
  3. enfin, fermez l’instruction if/then avec  » fi « – c’est juste” if  » orthographié en arrière.

Voici un exemple:

if ; then
echo "That number is greater than or equal to 4"
fi

Ici, nous allons vérifier si un nombre, 5, est supérieure ou égale à (c’est le « -ge”), un autre numéro, 4., Si c’est le cas, la commande « then” sera exécutée, nous invitant avec un message: « ce nombre est supérieur ou égal à 4. »Imaginez comment changer le 5 et utiliser une variable à la place pourrait améliorer la fonctionnalité de ce script.

Une fois que vous avez mis la main sur ces instructions, vous pouvez apprendre à utiliser « else” pour donner à vos commandes une action alternative dans le cas où les conditions « if” ne sont pas remplies. Pour les commandes plus compliquées, vous pouvez même utiliser « elif” (else if) pour ajouter des conditions à « else” sans réécrire fastidieusement plus de conditions « else”.,

Scripting avec des Solutions MDM

tout comme l’utilisation de scripts Mac peut rendre les commandes de terminal individuelles plus puissantes, l’utilisation de scripts avec votre solution MDM peut faire ressortir votre plein potentiel de gestion.

que vous utilisiez notre fonctionnalité de Script personnalisé ou que vous spécifiiez des comportements de pré – installation et de post-installation pour des applications personnalisées, les scripts avec un MDM peuvent vous permettre d’accomplir de nombreuses actions de gestion de périphériques avancées.,

J’espère que vous avez appris que vous pouvez utiliser des scripts pour effectuer des tâches en plusieurs étapes plus rapidement et plus précisément-et que vous pouvez écrire des stratégies avancées et les envoyer à tous les appareils de votre entreprise à l’aide d’une solution MDM, comme Kandji.

Au-delà de la mise en œuvre de vos scripts, Kandji dispose de nombreuses autres fonctionnalités intéressantes, telles que la conformité en un clic aux principaux critères de sécurité et le déploiement sans contact. C’est tout ce dont votre entreprise a besoin pour gérer votre flotte, du déploiement à la retraite.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *