Voici la procédure à suivre afin de créer son propre profile et charger la configuration que l’on souhaite à l’ouverture de PowerShell & ISE.
Procédure :
Identifiez le chemin de votre profile :
$PROFILE
Sous Windows 7, le résultat devrait être le suivant :
C:\Users\Pierre\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
Vérifier la présence du profile :
Test-Path $PROFILE
Si la réponse est False, il faut au préalable créer le fichier en tapant la commande suivante :
New-Item -Path $PROFILE -Type File -Force
Si la réponse est True, vous pouvez directement éditer et ajouter toutes les commandes que vous souhaitez exécuter à l’ouverture de PowerShell.
Voici la commande à taper pour recharger votre profile automatiquement :
./$PROFILE
Note :
Le profil que l'on vient de créer s'applique uniquement à la console PowerShell, un fichier de profil nommé profile.ps1
s'applique à la fois à PowerShell ISE ainsi qu'à la console PowerShell, tandis qu'un fichier de profil nommé Microsoft.PowerShellISE_profile.ps1
s'applique seulement à PowerShell ISE.
Screenshots :
Code du script :
<#
.SYNOPSIS
Customize your PowerShell Profile.
.DESCRIPTION
Customizing your PowerShell Profile in order to automatically load scripts when you start the PowerShell console.
.NOTES
File name : Microsoft.PowerShell_profile.ps1
Author : Pierre JACQUOT
Date : 28/10/2018
Version : 1.0
.LINK
Website : https://www.pierrejacquot.yo.fr
Reference : https://www.pierrejacquot.yo.fr/index.php/scripts/44-configurer-son-profile-sous-windows-powershell-ise
#>
Set-Location -Path "D:\"
New-Item alias:np -Value "C:\Windows\System32\notepad.exe" | Out-Null
New-Item alias:np++ -Value "C:\Program Files\Notepad++\notepad++.exe" | Out-Null
Clear-Host
Function Test-Administrator {
$Identity = [Security.Principal.WindowsIdentity]::GetCurrent()
$Principal = New-Object Security.Principal.WindowsPrincipal $Identity
$Principal.IsInRole([Security.Principal.WindowsBuiltinRole]::Administrator)
}
Function Prompt {
[string]$Hostname = [Environment]::MachineName
[string]$Username = [Environment]::UserName
$Host.UI.RawUI.WindowTitle = "Windows PowerShell > Hostname : $Hostname > Username : $Username"
Write-Host "I " -NoNewline
Write-Host "$([char]9829) " -ForegroundColor Red -NoNewline
Write-Host "PS " -NoNewline
Write-Host "> " -ForegroundColor Yellow -NoNewline
Write-Host (Get-Date -UFormat "[%d-%m-%Y %H:%M:%S] ") -ForegroundColor Cyan -NoNewline
Write-Host "> " -ForegroundColor Yellow -NoNewline
Write-Host (Split-Path $PWD -Leaf) -ForegroundColor Green -NoNewline
If (Test-Administrator -eq $True) {
$Host.UI.RawUI.WindowTitle = "[Administrateur] - Windows PowerShell > Hostname : $Hostname > Username : $Username"
Write-Host " >" -ForegroundColor Yellow -NoNewline
Write-Host " [ADMIN]" -ForegroundColor Red -NoNewline
}
Write-Host " >_" -ForegroundColor Yellow -NoNewline
return " "
}
Cliquer ici pour télécharger le script.