Variable d’environnement PATH, sa gestion avec PowerShell

0
(0)

Cet article présente deux cmdlets simples pour ajouter ou supprimer des chemins dans la variable d’environnement PATH ou PSModulePath. Ces cmdlets n’incluent pas encore la vérification de l’existence des chemins ou le rechargement automatique dans le contexte d’exécution, mais elles pourront être facilement adaptées dans le futur.

Ajout d’un chemin dans Variable d’environnement PATH

La cmdlet suivante permet d’ajouter un chemin à la variable PATH ou PSModulePath.

PowerShell
Function Add-Path {
    Param(
        [Parameter(Mandatory=$false)]
        [ValidateSet("PATH", "PSModulePath")]
        [String]$Target = 'PATH',
        [Parameter(Mandatory=$true)]
        [String]$Path
    )
    $PS = [IO.Path]::PathSeparator
    $Pathvar = [Environment]::GetEnvironmentVariable($Target, "Machine")
    $NewPathvar = ($Pathvar.Split($PS) -ne $Path -join $PS).Trim($PS)
    $NewPathvar = $NewPathvar + $PS + $Path
    [Environment]::SetEnvironmentVariable($Target, $NewPathvar, "Machine")
}

Explication

  • Paramètres :
    • $Target : Définit si le chemin doit être ajouté à PATH ou PSModulePath (par défaut, PATH).
    • $Path : Le chemin à ajouter.

La cmdlet vérifie si le chemin est déjà présent, et l’ajoute uniquement si ce n’est pas le cas.

Exemple d’usage

Ajoutons un nouveau chemin à la variable PATH pour que votre système reconnaisse un nouveau programme.

PowerShell
Add-Path -Path "C:\MonProgramme\Bin"

Cet exemple ajoute le dossier C:\MonProgramme\Bin à la variable PATH de la machine.

Suppression d’un chemin dans Variable d’environnement PATH

Voici la cmdlet pour supprimer un chemin de la variable PATH ou PSModulePath.

PowerShell
Function Remove-Path {
    Param(
        [Parameter(Mandatory=$false)]
        [ValidateSet("PATH", "PSModulePath")]
        [String]$Target = 'PATH',
        [Parameter(Mandatory=$true)]
        [String]$Path
    )
    $PS = [IO.Path]::PathSeparator
    $Pathvar = [Environment]::GetEnvironmentVariable($Target, "Machine")
    $NewPathvar = ($Pathvar.Split($PS) -ne $Path -join $PS).Trim($PS)
    [Environment]::SetEnvironmentVariable($Target, $NewPathvar, "Machine")
}

Explication

  • Paramètres
    • $Target : Variable d’environnement à modifier (par défaut PATH).
    • $Path : Chemin à supprimer.

Cette cmdlet supprime un chemin existant dans la variable spécifiée.

Exemple d’usage

Pour supprimer un chemin spécifique de la variable PATH :

PowerShell
Remove-Path -Path "C:\MonProgramme\Bin"

Cet exemple enlève le chemin C:\MonProgramme\Bin de la variable PATH.

Conclusion

Les cmdlets Add-Path et Remove-Path sont des outils pratiques pour gérer les chemins dans les variables d’environnement PATH et PSModulePath. Elles permettent de simplifier les modifications sans avoir à manipuler manuellement ces variables dans les paramètres système, tout en automatisant l’ajout ou la suppression de chemins.

Ces scripts sont particulièrement utiles pour les administrateurs système et les développeurs qui ont besoin d’ajuster fréquemment leurs variables d’environnement pour des raisons de compatibilité ou de gestion des modules. Leur flexibilité permet d’améliorer l’efficacité des environnements de travail, et ils peuvent être facilement adaptés à d’autres besoins, comme la vérification de l’existence d’un chemin avant l’ajout.

En somme, ces cmdlets offrent un gain de temps et d’efficacité précieux, que ce soit pour une utilisation personnelle ou en entreprise.



Cette publication était-elle utile ?

Cliquez sur une étoile pour l'évaluer !

Note moyenne 0 / 5. Nombre de votes : 0

Aucun vote pour le moment ! Soyez le premier à évaluer cette publication.

Laisser un commentaire