Aller au contenu

Utilisation des alias dans PowerShell avec le profil PowerShell

Création du profil

Le profil PowerShell est un script qui s'exécute automatiquement à chaque ouverture d'une session PowerShell. Il permet de personnaliser son environnement en définissant des alias, des fonctions, des variables ou en important des modules spécifiques. Cela améliore la productivité en automatisant la configuration de l'environnement de travail et en facilitant l'exécution de commandes courantes.
C'est l'équivalent du fichier .bashrc ou .bash_aliases sous Linux.

Ce script doit se nommer Microsoft.PowerShell_profile.ps1 et être enregistré dans le profil utilisateur à cet emplacement :
%USERPROFILE%\Documents\WindowsPowerShell pour Windows PowerShell (celui qui est préinstallé)
%USERPROFILE%\Documents\PowerShell pour la "VRAIE" version de PowerShell, celle à installer depuis le site officiel.

Pour vérifier l'existence de ce profil, exécuter la commande Test-Path $PROFILE. Si la commande renvoie True, le script existe déjà. Sinon il renverra False.

Pour créer le script si toutefois il n'existe pas, lancer la commande New-Item -ItemType File -Path $PROFILE -Force.

Ajout d'un alias

Supposons que nous nous connectons souvent à un serveur avec la commande ssh utilisateur@serveur -i c:\users\utilisateur\cle. Nous pourrions créer l'alias SERVEUR qui exécuterait la longue commande de connexion afin de gagner du temps. Voici ce qu'ajouter dans le profil PowerShell pour créer cet alias :

function SERVEUR {
    ssh utilisateur@serveur -i c:\users\utilisateur\cle
}

Chargement de modules à l'ouverture

Si nous utilisons régulièrement des modules PowerShell, il devient intéressant d'utiliser le profil PowerShell pour les lancer dès l'ouverture et éviter d'avoir à les charger manuellement.
Pour cela, il suffit d'ajouter cela dans le fichier Microsoft.PowerShell_profile.ps1 :

Import-Module ActiveDirectory
Import-Module DNSClient

Ne charger que ce qui est nécessaire !

Plus on chargera de modules, plus le temps d'initialisation de PowerShell sera long.

Lancement de scripts personnalisés

Il est aussi possible de lancer un script personnel dès le lancement. en inserant par exemple ceci :

. "C:\Scripts\AD-Management.ps1"