Recherche de site Web

PowerShell 7 : Changer le style de la barre de progression avec $PSStyle


Si vous incluez une barre de progression dans PowerShell, vous remarquerez qu'elle est différente dans PowerShell 5 et PowerShell 7. C'est exactement le problème que nous allons aborder dans cet article de blog et je vais montrer comment utiliser $PSStyle pour personnaliser la barre de progression. Commençons.

Point de départ

Voici un exemple pour vous montrer le problème. Le script ci-dessous sera exécuté d'abord avec PowerShell 5, puis avec PowerShell 7.

$numbers = 1..99
$count = $numbers.count
foreach ($n in $numbers) {
    "Computer0$n"
    Write-Progress -Activity 'Enumerate Computers' `
    -CurrentOperation Computer0$n `
    -Status "$(([math]::Round((($n)/$count * 100),0))) %"
    Start-Sleep -Seconds 1
 }

PowerShell 5.1 :

PowerShell 7 :

Le look est définitivement différent.

Changer le style

Comment pouvons-nous changer le style dans PowerShell 5.1 ou 7 ? La solution est $PSStyle.

Notez que la variable n'existe que dans PowerShell 7. Voici le paramètre par défaut dans PowerShell 7 et comment le changer pour le style de PowerShell 5.1.

$PSStyle.Progress.View = 'Classic'

Maintenant, la barre de progression ressemble exactement à celle de PowerShell 5.1.