les paramètres nommés :
aScript.ps1 -FirstParam aValue1 -SecondParam aValue2 -ThirdParam aValue3
# On appelle une fonction de la même manière
aFunctionName -FirstParam aValue1 -SecondParam aValue2 -ThirdParam aValue3
</co
tient une simple table de hachage. Les paires clé-valeur dans la table de hachage permettent de :
* ... uthor "YourNameHere"
</code>
On peut définir les valeurs des arguments dans une table de hash puis ap... CmdletsToExport = @()
AliasesToExport = @()
VariablesToExport = @('$aVarName1', '$aVarName2')
}
New-ModuleManifest -Path .\My.Module.Name.psd1 @mod
fier le dossier temp de l'utilisateur ======
Les variables d’environnement **TEMP** et **TMP** défini... dans un RAM Disk.
<code powershell>
# Affiche la valeur de la variable d'environnement
$env:TEMP
</code>
En PowerShell la classe **System.Environment** fournit les méthodes **GetEnvironmentVariable()** et **SetEnvironmentVariable()**.
<code
ute un bloc d'instructions tant que la condition évaluée reste vraie
<code powershell>
# Repose la qu... >
==== While ====
La boucle While commence par évaluer la condition avant l'exécution du bloc d'instructions. Le bonc peut donc s’exécuter 0 ou plusieur... ois.
<code powershell>
$userChoise = 'Oui'
# La variable est initialisée à 'oui'
# le bloc ci-dessou
[CmdletBinding()]
[Parameter(Mandatory)]
[ValidateSet("Low","Average","High")]
[String] $Ba... d'exécution du script. On peut ainsi afficher les valeurs des variables taper des commandes de débogage et analyser le comportement du script pas à pas.
... stoppe l'exécution à la ligne spécifiée ;
* ''-Variable'' : stoppe l’exécution lors de l'accès en l
défaut dans la console de l'utilisateur. C'est la variable **$VerbosePreference** qui permet de déterm... ment pour l'environnement actif:
Les différentes valeurs possibles pour la variable **$VerbosePreference** correspondent à un sous ensemble des valeurs du type énuméré **ActionPreference**:
^ Sto
Get-EventLog Security -Newest $Last
# Valeurs à retourner (optionnel)
Return($values)
}
</code>
La note [[dev/powershell/parametres|utili... ns d’aide dans chaque fonction.
===== Portée des variables =====
3 portées distinctes existent :
^ Global | Variables accessibles dans l'invite PowerShell et le
es tableaux ======
Les tableaux (Array) sont des variables permettant de stocker des valeurs de même type.
===== Créer une variable tableau =====
<code powershell>
# Le type tableau est d... d"
$devices.Length
2
</code>
===== Accéder aux valeurs =====
Le nom de la variable tableau retourn
:\Temp\test.txt ».
</code>
On peut utiliser les variables **$WhatIfPreference** ou **$PSDefaultParameterValues** pour définir l'utilisation de l'argument -W... hatif par défaut
$WhatIfPreference = $true
# Equivalent
$global:PSDefaultParameterValues['*:WhatIf'] = $true
</code>
===== Références =====
* [[ht
numéro de caractère spécifié. |
^ Replace(string value,string value) | Remplace toutes les instances de la première chaîne par la deuxième chaîne. |
^ Sp... learn.microsoft.com/fr-fr/training/modules/manage-variables-windows-powershell-scripts/6-use-string-variables-methods
ature de la fonction ;
* Sur la dernière ligne avant la fermeture de la fonction.
<code powershell>... oblème a été rencontré notamment à cause d'une mauvaise syntaxe du mot clé .PARAMETER
<code powershell>
<#
# Syntaxe invalide!
.PARAMETER
aParam Description du paramèt... ion du paramètre ici.
#>
</code>
Pour tester la validité de la syntaxe, on peut simplement copier/co
lé : une chaîne de caractère unique associée à la valeur.
<code powershell>
# Définit une table de h... $message = '{0} is {1} years old!' -f $_.key, $_.value
Write-Output $message
}
</code>
===== Pa... smettre la table à la commande avec la syntaxe suivante :
<code bash>
$DHCPScope = @{
Name ... e : on souhaite simplement stocker un ensemble de valeurs et accéder aux propriétés. Dans ce cas on pe
ev sysadmin powershell}}
====== PowerShell : Elévation des privilèges ======
L'option "Exécuter en ... ts tels qe Keepass, LastPass, CredMan ou Azure KeyVault.
Le module SecretManagement est distribué vi