我们有一个客户,我们将迁移到 SharePoint Online。目前他们在本地服务器上有共享文件夹。
域中的用户已创建指向共享内位置的快捷方式。
我需要一个 PowerShell 脚本,将快捷方式的目标更改为 URL,以便当他们单击文件共享快捷方式时,他们被定向到 SharePoint 在线页面(只是一个 URL),而不是他们的旧共享位置。
我有一个 RMM 平台,我可以在平台上向域中的所有 PC 推送脚本,因此它可以是本地级别的脚本,但它需要在桌面上的快捷方式上指定。或者甚至是特定的快捷方式(可能是文件名变量?)。
任何帮助都将不胜感激。
答案1
要处理 .lnk/ShortCut 文件(列出或更改),您需要将 WindowsScriptHost 作为 ComObject 获取。
我首先要清点一下你拥有的东西。
## Q:\Test\2019\05\21\SO_1439438.ps1
$OWsh = New-Object -ComObject WScript.Shell
$Desktop = [environment]::GetFolderPath('Desktop')
$DesktopLinks = Get-ChildItem -Path $Desktop *.lnk | ForEach-Object {
$OWsh.CreateShortcut($_.FullName)
}
$DesktopLinks | Out-Gridview
$DesktopLinks | Export-Csv $Desktop\DesktopLinks.csv -NoTYpeInformation
相同的 ComObject 可用于更改设置,但您需要使用表或其他方式来转换目标。