Vous pouvez naviguer dans le Registre Windows en utilisant les mêmes techniques de navigation que dans le lecteur de système de fichiers. Dans Windows PowerShell, la ruche HKEY_LOCAL_MACHINE est mappée au lecteur Windows PowerShell HKLM: et HKEY_CURRENT_USER au lecteur Windows PowerShell HKCU:.

Par exemple :

PS C:\> cd hklm:
PS HKLM:\> dir
PS HKLM:\> dir
   Hive: Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE
SKC  VC Name                           Property
---  -- ----                           --------
  4   0 HARDWARE                       {}
  1   0 SAM                            {}
Get-ChildItem : Requested registry access is not allowed.
At line:1 char:3
+ dir <<<<
 39   2 SOFTWARE                       {flash, (default)}
  8   0 SYSTEM                         {}
PS HKLM:\> cd system\currentcontrolset\control
PS HKLM:\system\currentcontrolset\control> dir

À mesure de votre navigation, vous remarquerez que la sortie de dir (Get-Childitem) dans les lecteurs de Registre est différente de celle du système de fichiers. Étant donné que le Registre utilise des lecteurs différents, Windows PowerShell affiche une vue différente des données. Dans ce cas, il est important de connaître le nombre de sous-clés et d'entrées présentes, de sorte que la sortie comprenne un nombre de sous-clés (SKC) et un nombre d'entrées de valeurs (VC), en plus des noms des sous-clés et des entrées.

PS> cd "CurrentControlSet\Control\Session Manager"
PS> dir
    Hive: Registry::HKEY_LOCAL_MACHINE\system\CurrentControlSet\Control\Session
Manager

SKC  VC ChildName                      Property
---  -- ---------                      --------
  0   1 AppCompatibility               {AppCompatCache}
 15   0 AppPatches                     {}
  0   7 DOS Devices                    {AUX, MAILSLOT, NUL, PIPE, PRN, UNC, f...

Vous ne rencontrerez que peu de différences de navigation jusqu'à l'accès aux entrées du Registre. Les entrées d'une clé de Registre sont considérées comme étant les propriétés de la clé sous laquelle elles se trouvent. En tant que telles, vous pouvez les récupérer au moyen de l'applet de commande Get-ItemProperty.

Par exemple, si vous souhaitez voir la valeur de la stratégie d'exécution Windows PowerShell, vous pouvez utiliser l'applet de commande Get-ExecutionPolicy ou naviguer jusqu'à l'entrée de Registre ExecutionPolicy qui stocke la valeur dans HKLM:\Software\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell.

PS C:\> cd hklm:
PS HKLM:\> cd software\microsoft\powershell\1\ShellIds\Microsoft.PowerShell
PS HKLM:\software\microsoft\powershell\1\ShellIds\Microsoft.PowerShell> dir
PS HKLM:\software\microsoft\powershell\1\ShellIds\Microsoft.PowerShell> get-itemproperty -path . -name executionpolicy

PSPath          : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software\microsoft\powershell\1\ShellIds\Micro
                  soft.PowerShell
PSParentPath    : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software\microsoft\powershell\1\ShellIds
PSChildName     : Microsoft.PowerShell
PSDrive         : HKLM
PSProvider      : Microsoft.PowerShell.Core\Registry
ExecutionPolicy : RemoteSigned




Table des matières