Le script ci-dessous , permet de modifier le chemin cible d'un raccourcis
Etape 1 : Création d'une variable $nom_intranet
La variable "$nom_intranet" contenu dans le paramètre ci-dessous, corresponds au nom du répertoire où se trouve notre fichier ou dossier en "LNK".
Param (
[parameter(Mandatory=$true)][String]$nom_intranet
)
Etape 2 : Déclaration des variables
L'applet de commande Read-Host permet de lire une ligne d'entrée à partir de la console
[string]$ancien_cible = Read-Host "Saisir la valeur a remplacer EX:{\\SRV01} "
[string]$nouveau_cible = Read-Host "Saisir la nouvelle valeur EX:{\\SRV02} "
Etape 2 : Tratement du script
$raccourcis = Get-ChildItem -Recurse "\\SRV02\intranet\raccourci" -Include *.lnk
$obj = New-Object -ComObject WScript.Shell
ForEach($raccourci in $raccourcis){
$link = $obj.CreateShortcut($raccourci)
[string]$link.TargetPath = $link.TargetPath.Replace([String]$ancien_cible,[String]$nouveau_cible)
[string]$link.Save()
Write-Host $link.TargetPath -ForegroundColor green
}