批量修复失效快捷方式:符号链接与 PowerShell 两种方案
迁移目录后(例如把 C:\book 挪到 E:\book),桌面上指向旧路径的
.lnk快捷方式集体“红叉”?两条路:
方案 A(零改动):在旧地址做一个“桥”——符号链接;
方案 B(极简脚本):批量把快捷方式的目标从旧前缀改成新前缀。
0. 路线图(怎么选)
- 想立刻全部恢复可用,且旧前缀统一(如都以
C:\book\...开头)→ 用 方案 A:符号链接(不改任何快捷方式)。 - 想彻底换地址、不留别名,或旧盘/旧路径不存在了 → 用 方案 B:PowerShell 批量改
.lnk。
1) 方案 A:用“符号链接”桥接旧地址(最快)
在 旧路径处 创建一个指向 新路径 的目录链接,所有走旧门牌的访问都会被带到新家。
命令(管理员 CMD)
mklink /D "C:\book" "E:\book"
-
/D= 目录符号链接;可跨磁盘。 -
没有管理员权限时,可用目录联接(更宽松):
mklink /J "C:\book" "E:\book"
优点:不改任何快捷方式/程序路径,全局立即生效;删除链接即可回滚。
局限:必须能在旧父目录下创建链接(旧盘符若消失,就改不了)。
2) 方案 B:PowerShell 极简脚本批量修复(干净)
把桌面上所有 .lnk 中以 C:\book\... 开头的目标,批量改成 E:\book\...,并同步“起始于(WorkingDirectory)”。
下列脚本只处理“当前用户桌面”,完全按你的简洁版本写法,并用 C→E 举例。
$desktop = [Environment]::GetFolderPath("Desktop")
$lnks = Get-ChildItem -Path $desktop -Filter

最低0.47元/天 解锁文章
934

被折叠的 条评论
为什么被折叠?



