Compte-Rendu Cours PowerShell I) Gérer Windows Server 2016 avec PowerShell 3) C
Compte-Rendu Cours PowerShell I) Gérer Windows Server 2016 avec PowerShell 3) Comprendre les cmdlets PowerShell Pour effacer le contenu de notre terminal, on utilise la commande ci-dessous : On peut utiliser aussi la touche ctrl +l un raccourci clavier pour effacer le contenu du terminal. Il est important de savoir que toutes les commandes cmdlets sont construites de la même façon avec en particulier un verbe ou une action, un tiret et un nom. Par exemple pour la liste des services, on utilise la commande get-service et pour avoir la liste des fonctionnalités de Windows, on utilise la commande get-windowsfeature. Pour avoir la liste de toutes les cmdlets, on utilise la commande suivante : Préparer par: Baldé Formateur: Mamadou Oury Fait le: 04/05/2022 Ensuite, la commande get-alias affiche la liste de tous les alias qui sont présents actuellement dans l’environnement PowerShell. L’alias get – alias cls permet de connaître la correspondance de cls. On peut aussi retrouver un alias à partir d’un nom via : 4) Connaître des astuces sur PowerShell Une des caractéristiques de Windows PowerShell 5, c’est qu’elle permet de s’auto débrouiller. Quelques astuces à connaître pour trouver la commande d’aide nécessaire et éviter de faire des erreurs. Trouver toutes les commandes d’aide qui vont nous parler d’alias via : Pour avoir l’aide de new-alias, on utilise la commande get-help via : Pour retrouver des exemples, on procède comme suit : NB : Windows PowerShell n’est pas sensible à la casse. On peut vérifier pour voir si on a un alias qui correspond à clear-host via : L’alias qui correspond à clear-host c’est eff donc, on peut faire un get-alias eff pour retrouver clear-host 5) Utiliser les opérateurs PowerShell Les cmdlets PowerShell ne sont pas livrées en vrac dans Windows mais elles sont organisées sous forme de modules. La commande qui nous permet d’avoir la liste est : get-module Pour connaître les cmdlets d’un module, on procède comme suit : On peut voir aussi tous les modules qui sont disponibles via : Les modules sont chargés dynamiquement. Tous les utilisateurs AD sont obtenus de la façon suivante : La commande get-ExecutionPolicy : donne la stratégie qui est en cours sur l’environnement RemoteSigned : on n’a la possibilité d’exécuter un certain nombre de programme. On appelle ça des scripts de programme ou de module PowerShell sous réserve que les scripts tirés sous Windows sont signés ou pas. On utilise pour ça, soit get –help Get-ExecutionPolicy ou soit, on utilise l’alias help Get-ExecutionPolicy. Pour avoir plus d’information, on utilise ces différentes commandes ci-dessous 5) Utiliser les opérateurs PowerShell (suite) On peut retrouver dans PowerShell des opérateurs qui permettent de faire des calculs arithmétiques et aussi des opérateurs qui permettent de tester l’égalité entre deux nombres. Test sur des chaînes de caractère : Avec cet opérateur, il n’y a pas de différenciation entre minuscule et majuscule. Pour des tests qui intègrent la différence entre minuscule et majuscule, on utilise –ceq à la place de –eq Test logique : avec des opérateurs –end ou avec –or Si on veut nier qu’une phrase est vraie, on utilise le point d’exclamation 6) Apprendre la notion de pipeline C’est une technique qui permet d’enchaîner le résultat des commandes pour que ce résultat soit traité par la commande suivante. Du coup, sur PowerShell, on peut formater un résultat pour avoir plus de détaille via : Cette syntaxe, nous permet d’avoir pour chaque service le formatage sous forme de liste. Le pipe | permet de récupérer chacun des services et de les traiter individuellement dans la commande suivante. Pour avoir un affichage sous forme de tableau, on utilise la syntaxe ci-dessous : L’une des options de cette syntaxe est : On peut enchaîner différents pipelines, à condition de pouvoir le faire. II) Ecrire un premier script avec PowerShell 1) Commenter un script PowerShell PowerShell n’est pas sensible à la gestion de l’espace car il considère que chaque ligne est indépendante. Mais, nous avons la possibilité de supprimer ou de créer autant d’espace que l’on veut. Autres façons d’écrire des codes : on peut avoir des blocs entiers de code qui commencent par <# et qui se terminent par #>. 2) Comprendre la variable particulière Les services qui commencent par S sont appelés objets du point de vue PowerShell. Pour pouvoir afficher que les services qui sont arrêtés, on utilise un filtre en sélectionnant uniquement les services qui ont un statut Stopped. On filtre tous les services qui sont arrêtés en pipant le résultat via : Chaque service est représenté par un caractère particulière du nom de $_ Pour les services qui commencent par T, on aura : La liste des services qui sont arrêtés dont le nom commence par service 3) Déclarer et initialiser les variables Une variable est une petite zone de mémoire dans laquelle, on donne un nom et qu’on peut utiliser dans notre script. Ensuite, pour espacer un nom, on peut créer une variable via : Pour le nommage de la variable, on peut utiliser aussi la notation polonaise inversée $ + l’objet + l’attribut via : 4) Découvrir Windows PowerShell ISE On peut mettre ces cmdlets dans des scripts. Un script PowerShell est un fichier texte avec une extension .ps1. Nous avons une sécurité dans Windows qui font que les scripts PowerShell y compris les scripts locaux ne peuvent pas s’exécuter. Dans ce cas, on doit connaître la stratégie de notre environnement via la commande ci-dessous : Du coup, pour exécuter nos scripts, on doit se mettre en mode RemoteSigned. 5) Manipuler les objets Windows PowerShell fournit un environnement de ligne de commande baser sur le modèle objet. C’est une notion qui rend un peu plus délicat la compréhension des commandes. En effet, les commandes renvoient en général un objet et non pas une chaîne de caractère. Par définition, un objet est caractérisé par ses propriétés, ses colonnes etc… Il a aussi des méthodes et une méthode c’est une action qu’on peut appliquer sur l’objet. Par exemple un service peut être arrêté. Pour connaître toutes les propriétés et méthodes, on utilise la commande ci-dessous Pour renvoyer les informations contenues dans Name et RequiredServices, on procède comme suit : On peut voir les objets renvoyés par la commande ci-dessus via : Sort-Object est une autre cmdlete qui permet de trier les différents objets. Pour trier le status qui est démarré ou arrêté, on utilise la syntaxe ci-dessous : Dans l’ordre inverse, on utilise –descending dans la syntaxe via : III) Manipuler les variables et les types de données 1) Découvrir les types de données On n’a deux variables qui sont définis à savoir $personneNom et $personneAge. La première variable contient une chaîne de caractère appelée string et la seconde est de type entier (int). Il faut savoir qu’un type de donnée permet de caractériser une donnée comme par exemple un nombre ou une chaîne de caractère. 2) Faire une conversion explicite Pour afficher le double de l’âge de la personne, on va créer une variable du nom de $personne AgeDouble. Résultat après l’exécution du script est : Bonjour Alice, le double de notre âge est 3535 ans. Etant donné que ce n’est pas le résultat que je m’attendais, pour résoudre ce problème, on indique qu’on veut convertir via : 10 : c’est pour indiquer la base décimale. Du coup, notre résultat sera de : Bonjour Alice, le double de cotre âge est 70 ans Ça aurait été plus simple si j’avais mis [int] à la place de [string]. 3) Typer une variable Faire en sorte que nos données soient de type précis. On va prendre l’exemple sur $personneNom. Pour ça, on procède comme suit : Mettre Bob chaîne de caractère dans une valeur [int] n’est pas adéquat, c’est pourquoi une erreur sur la partie du script. Le string accepte l’ensemble de valeur très large c’est pourquoi, je n’ai pas eu de problème sur la ligne $personneNom=77. IV) Connaître les instructions 1) Utiliser l’instruction conditionnelle Le script Windows PowerShell version 5 est constitué d’instruction. Les instructions peuvent être rassembler dans un bloc d’instruction symbolisé par une paire d’accolade. Notre première instruction a manipulé est la condition if. Affichage d’un message personnalisé en fonction de l’âge : pour ça, il faut faire attention à la logique, soit on affiche un message ou soit, on affiche plusieurs. En ayant 30 ans, le script affiche comme message : On peut rajouter des conditions complexes On peut avoir plusieurs lignes d’instruction Pour atteindre le fait d’avoir un seul message, il va falloir utiliser une variante de cette instruction. 2) Manipuler l’instruction IF ELSE IF Si, on veut avoir qu’un seul message concernant l’âge, on peut procéder comme suit : ELSEIF : est une instruction qui signifie, si la condition précédente est fausse et si la condition suivante est vraie, alors, on exécute les instructions qui se trouvent dans le bloc d’instruction. ELSE : si toutes les conditions précédentes sont fausses alors on peut utiliser cette instruction. Au-delà de 35, on aura : 3) Pratiquer l’instruction SWITCH uploads/Industriel/ powershell.pdf
Documents similaires










-
40
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Apv 17, 2021
- Catégorie Industry / Industr...
- Langue French
- Taille du fichier 1.8700MB