PowerShell – Une introduction aux principes de base

PowerShell pour les débutants – Une introduction aux principes de base

PowerShell for beginners

Qu’est-ce que PowerShell ?

Dans le monde moderne, tout le monde s’efforce d’automatiser. Pour un administrateur, l’exécution des mêmes tâches répétitives peut devenir monotone, ce qui non seulement réduit l’efficacité mais peut également entraîner des erreurs.

PowerShell est un outil interactif de ligne de commande qui vous permet d’automatiser ces tâches banales. Vous pouvez exécuter des programmes connus sous le nom de « script (enregistré sous forme de fichier .ps1) », qui contient plusieurs cmdlets pour la tâche concernée.

Qu’est-ce qu’un cmdlet ?

Un cmdlet est simplement une commande par laquelle vous pouvez effectuer une action. Les deux cmdlets les plus utiles que chacun devrait connaître sont les suivants :

  • Get-Command
  • Get-Help

Grâce à la cmdlet ‘Get-Command’, vous pouvez trouver toutes les cmdlets disponibles, même si vous ne connaissez pas la cmdlet exacte. Par exemple, vous voulez redémarrer un service à partir de PowerShell, mais vous ne connaissez pas la cmdlet. Vous pouvez toutefois supposer qu’elle contient le mot « service ».

PowerShell for Beginners – An Introduction to the Basics

Dans la capture d’écran ci-dessous, vous avez trouvé toutes les cmdlets disponibles qui contiennent le mot ‘service’ et donc, vous avez trouvé la cmdlet pour redémarrer un service.

Mais comment pouvez-vous utiliser cette cmdlet ? Vous pouvez trouver plus d’informations à son sujet en utilisant la cmdlet ‘Get-Help’.

Cela fournit les informations de base sur le cmdlet et les paramètres qui peuvent être utilisés dans celui-ci.

PowerShell for Beginners – An Introduction to the Basics

Si vous voulez trouver l’article de MS sur une cmdlet, ajoutez simplement le paramètre ‘-Online’ à la fin et cela ouvrira la page MS dans le navigateur.

PowerShell contre PowerShell ISE

Vous savez maintenant comment exécuter un programme ou une cmdlet dans PowerShell mais où écrire un programme. Vous pouvez le faire dans PowerShell ISE.

PowerShell pour les débutants

Variable

Tout caractère précédé du symbole ‘$’ devient une variable. Une variable est utilisée lorsque vous devez stocker une valeur afin de pouvoir l’utiliser plus tard dans le script.

Vous avez 2 valeurs ’10’ et ‘4’ et vous devez effectuer 3 fonctions sur ces valeurs, comme l’addition, la soustraction et la multiplication. Il y a donc 2 façons d’effectuer cette tâche

a) 10+4, 10-4, 10*4

b) $a = 10

$b = 4

$a + $b, $a – $b, $a * $b

PowerShell pour les débutants

Types de données dans PowerShell

Il existe différents types de données dans PowerShell, notamment les entiers, les valeurs à virgule flottante, les chaînes de caractères, les booléens et les valeurs DateTime, qui correspondent à ce que vous utilisez dans votre vie quotidienne. La méthode GetType renvoie le type de données actuel de la variable donnée.

Les variables peuvent être converties d’un type à un autre par conversion explicite.

  • Integer : Il est du type « nombre entier ».  Toute valeur décimale est arrondie.
  • Floating Point : La valeur est de type décimal.
  • String (Chaîne) : Comme son nom l’indique, elle est utilisée pour stocker des lettres et des caractères.
  • Boolean : Cette valeur peut être soit Vrai soit Faux. Si elle existe, alors c’est Vrai, sinon ce sera Faux.
  • DateTime : Comme son nom l’indique, il s’agit d’un type de date et d’heure.

Tableaux

Les tableaux sont le plus souvent utilisés pour contenir une liste de valeurs, comme une liste de noms d’utilisateurs ou de villes. Les tableaux PowerShell peuvent être définis en mettant une liste d’éléments entre parenthèses et en la faisant précéder du symbole ‘@’. Par exemple,

$nameArray = @(“John”,”Joe”,”Mary”)

On peut accéder aux éléments d’un tableau en utilisant leur indice numérique, en commençant par 0, entre crochets, comme suit : $nameArray[0]. Par exemple,

$nameArray[0] sera la première valeur du tableau, c’est-à-dire « John ».

$nameArray[1] sera la deuxième valeur du tableau, c’est-à-dire « Joe ».

En termes simples, un tableau est comme une colonne dans Excel contenant le même type de données.

Name
John
Joe
Mary

Exercice 1 : Créez les tableaux 1 et 2 comme ci-dessous. Le troisième tableau doit montrer la somme de chaque valeur correspondante dans les tableaux 1 et 2.

Array1Array2Array3
145
257
369

Remarque : utilisez le concept de concaténation. Notre objectif est de comprendre comment l’indexation se produit dans un tableau et comment vous pouvez l’utiliser pour réaliser la tâche ci-dessus.

Table de hachage

Une forme plus avancée de tableau, appelée « hashtable », est attribuée avec des parenthèses ondulées précédées du signe « @ ». Alors que les tableaux sont généralement (mais pas toujours) utilisés pour contenir des données similaires, les tables de hachage sont mieux adaptées aux données connexes (plutôt que similaires). Les éléments individuels d’une table de hachage sont nommés plutôt que de se voir attribuer un indice numérique, par exemple

$user=@{FirstName=”John”; LastName=”Smith”; MiddleInitial=”J”; Age=40}

Les éléments d’une table de hachage sont facilement accessibles en utilisant la variable et le nom de la clé, par exemple

$user.LastName will return the value ”Smith”.

Pour comprendre facilement les hashtables, vous pouvez les mettre en relation avec l’exemple suivant.

Dans l’exemple ci-dessous, vous avez un tableau dans lequel la première colonne contient le « FirstName », la deuxième colonne contient le « LastName », la troisième colonne contient le « MiddleInitial » et la quatrième colonne contient l' »Age ».

FirstNameLastNameMiddleInitialAge
JohnSmithD40
JoeParkerL32
GarySmithN25

Maintenant, si vous stockez le tableau ci-dessus dans une table de hachage « $user », alors, pour appeler la première colonne, vous devrez exécuter la commande « $user.FirstName », qui listera tous les prénoms de la colonne 1.

Pratique 2 : Créez 2 hashtables comme ci-dessous et le troisième hashtable doit être calculé comme (DaysWorked * SalaryPerDay).

Hashtable 1Hashtable 2Hashtable 3
NameDaysWorkedNameSalaryPerDayNameSalary
John12John100John1200
Joe20Joe120Joe2400
Mary18Mary150Mary2700
L’utilisation de PowerShell en accès Web est-elle pratique ?

PowerShell en accès Web : est-ce pratique ?

New-DistributionGroup : Une cmdlet PowerShell incomprise

New-DistributionGroup : Une cmdlet PowerShell incomprise

Adaptez vos scripts Exchange Online pour utiliser Get-ExoMailbox

Adaptez vos scripts Exchange Online pour utiliser Get-ExoMailbox

Les 6 principales commandes PowerShell pour gérer Office 365

Les 6 principales commandes PowerShell pour gérer Office 365

Retour en haut