Anzeige
Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden.
Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
[gelöst] Die Pfade aller Link-Dateien ändern
- Ersteller hajosch
- Erstellt am
Anzeige
Ein wenig PowerShell sollte auch helfen.
https://gallery.technet.microsoft.com/scriptcenter/Modify-shortcut-file-lnk-fdfee592
https://gallery.technet.microsoft.com/scriptcenter/Modify-shortcut-file-lnk-fdfee592
Hallo IngoBingo,
längeres Versuchen hat nicht zum Erfolg geführt, da ich über null Kenntnisse in der PowerShell-Scriptsprache verfüge.
Könntest Du mir die erforderlichen Parameter in das Script 'modLink.ps1' einstellen?
Ich möchte alle Verknüpfungen im Ordner H:\temp (einschließlich Unterordner) von Z:\Tools nach H:\Tools umstellen.
Vorab vielen Dank
Gruß hajosch
längeres Versuchen hat nicht zum Erfolg geführt, da ich über null Kenntnisse in der PowerShell-Scriptsprache verfüge.
Könntest Du mir die erforderlichen Parameter in das Script 'modLink.ps1' einstellen?
Ich möchte alle Verknüpfungen im Ordner H:\temp (einschließlich Unterordner) von Z:\Tools nach H:\Tools umstellen.
Vorab vielen Dank
Gruß hajosch
Dann müsste man das Script eigentlich nur etwas einkürzen um die Funktionen zum Bearbeiten der Links.
Das sähe dann so aus:
$fileName ="*.lnk"
$folder = "C:\Users"
$list = Get-ChildItem -Path $folder -Filter $fileName -Recurse | Where-Object { $_.Attributes -ne "Directory"} | select -ExpandProperty FullName
ForEach($lnk in $list)
{
$obj = New-Object -ComObject WScript.Shell
$link = $obj.CreateShortcut($lnk)
Write-Host $lnk -> $link.TargetPath
}
Das sähe dann so aus:
$fileName ="*.lnk"
$folder = "C:\Users"
$list = Get-ChildItem -Path $folder -Filter $fileName -Recurse | Where-Object { $_.Attributes -ne "Directory"} | select -ExpandProperty FullName
ForEach($lnk in $list)
{
$obj = New-Object -ComObject WScript.Shell
$link = $obj.CreateShortcut($lnk)
Write-Host $lnk -> $link.TargetPath
}
Hast du mal probiert, das Script selber genau anzuschauen? Manchmal fällt einem dann ja schon auf, wie sowas funktioniert.
Die "Write-Host" Zeile gibt momentan den Inhalt von den Variablen $lnk (den Ordnernamen) sowie der Variablen $link.TargetPath (das Ziel des Links) aus sowie den Pfeil dazwischen. Wenn du einfach die Dinge löscht, die du nicht sehen willst, kommst du da schnell zum Ziel.
Write-Host $link.TargetPath
...würde an der Stelle halt nur die Link-Ziele ausgeben.
Die "Write-Host" Zeile gibt momentan den Inhalt von den Variablen $lnk (den Ordnernamen) sowie der Variablen $link.TargetPath (das Ziel des Links) aus sowie den Pfeil dazwischen. Wenn du einfach die Dinge löscht, die du nicht sehen willst, kommst du da schnell zum Ziel.
Write-Host $link.TargetPath
...würde an der Stelle halt nur die Link-Ziele ausgeben.
Anzeige