systemes_dexploitation:windows:all:powershell
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédenteDernière révisionLes deux révisions suivantes | ||
systemes_dexploitation:windows:all:powershell [2016/11/08 16:03] – sgariepy | systemes_dexploitation:windows:all:powershell [2016/11/09 19:33] – [Exécuter des scripts] sgariepy | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== PowerShell ====== | ====== PowerShell ====== | ||
+ | ===== Version ===== | ||
+ | |||
+ | $PSVersionTable | ||
===== Exécuter des scripts ===== | ===== Exécuter des scripts ===== | ||
+ | Par défaut, l' | ||
+ | Set-ExecutionPolicy RemoteSigned | ||
| | ||
- | set-executionpolicy RemoteSigned | + | |
====== Variables ====== | ====== Variables ====== | ||
Ligne 17: | Ligne 22: | ||
</ | </ | ||
+ | ===== Variables d' | ||
+ | |||
+ | Les variables d' | ||
+ | |||
+ | Write-Host $env:PATH | ||
+ | |||
+ | Pour la liste des variables d' | ||
====== Chaînes ====== | ====== Chaînes ====== | ||
Ligne 81: | Ligne 93: | ||
param($nom) | param($nom) | ||
return "Le nom est $nom." | return "Le nom est $nom." | ||
+ | |||
+ | |||
+ | ====== Logique ====== | ||
+ | |||
+ | |||
+ | ===== Conditions ===== | ||
+ | |||
+ | ==== If ==== | ||
+ | |||
+ | |||
+ | L' | ||
+ | |||
+ | < | ||
+ | param($number) | ||
+ | if ($number -eq 5) { | ||
+ | Write-Output "Vous avez deviné le chiffre magique." | ||
+ | } | ||
+ | else { | ||
+ | Write-Output "Vous n'avez pas trouvé." | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | ==== Switch ==== | ||
+ | |||
+ | Au lieu du '' | ||
+ | |||
+ | < | ||
+ | switch (expression) | ||
+ | { | ||
+ | {test} {code block} | ||
+ | value {code block} | ||
+ | default {code block} | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | |||
+ | < | ||
+ | $today=get-date | ||
+ | |||
+ | switch ($today.day) | ||
+ | { | ||
+ | 1 { Write-Host "Jour de paie!" } | ||
+ | 1 { Write-Host " | ||
+ | 5 { Write-Host " | ||
+ | 10 { Write-Host " | ||
+ | default { Write-Host "Rien à se rappeler aujourd' | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | |||
+ | ==== Opérateurs ==== | ||
+ | |||
+ | Les opérateurs suivant ne sont pas sensibles à la casse par défaut. | ||
+ | |||
+ | ^ Opérateur | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | |||
+ | |||
+ | Pour avoir une comparaison sensible à la casse, il faut préfixer d'un '' | ||
+ | |||
+ | |||
+ | Source : [[http:// | ||
+ | ===== Boucles ===== | ||
+ | |||
Ligne 87: | Ligne 179: | ||
====== Gestion d' | ====== Gestion d' | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ===== Trap statement ===== | ||
+ | |||
+ | L' | ||
+ | |||
+ | < | ||
+ | function test-trap { | ||
+ | trap { | ||
+ | "Une erreur est survenue: $_" | ||
+ | } | ||
+ | | ||
+ | $var = 1/0 | ||
+ | Write-Host "Fin de la fonction" | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | On peut utiliser '' | ||
+ | |||
+ | |||
+ | ===== Try/Catch ===== | ||
+ | |||
+ | Dans PowerShell 2.0 ou plus, on peut utiliser les '' | ||
+ | |||
+ | |||
+ | < | ||
+ | try { | ||
+ | $var=1/0 | ||
+ | "La fonction s'est terminée correctement" | ||
+ | } | ||
+ | catch [System.Management.Automation.CommandNotFoundException] { | ||
+ | " | ||
+ | } | ||
+ | catch { | ||
+ | " | ||
+ | } | ||
+ | finally { | ||
+ | "Ceci s' | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | |||
+ | ===== ErrorAction ===== | ||
+ | |||
+ | |||
+ | |||
Ligne 93: | Ligne 233: | ||
commande_erreur.exe | commande_erreur.exe | ||
exit $LASTEXITCODE | exit $LASTEXITCODE | ||
+ | | ||
+ | | ||
+ | ====== Commandes ====== | ||
+ | |||
+ | ===== Système de fichiers ===== | ||
+ | |||
+ | Param($path) | ||
+ | new-item -ItemType Directory -Name $path | ||
+ | cd $path | ||
+ | |||
+ | |||
+ | |||
+ | ====== Commandes utiles ====== | ||
+ | |||
+ | |||
+ | ===== Exécution ===== | ||
+ | |||
+ | Pour l' | ||
+ | Start-Sleep -Seconds 600 | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ====== Exemples ====== | ||
+ | |||
+ | |||
+ | iwr https:// | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ |