PowerShell可批量清除Windows文件的Zone.Identifier标记以解除锁定。使用Get-ChildItem | Unblock-File可单层解锁,加-Recurse参数可递归解锁子目录,完成后右键属性中无“来自其他计算机”提示即成功。

当你从局域网、邮件附件或网页下载一批文件后,双击打开Word、PDF、CHM或EXE时频繁弹出“此文件来自其他计算机,可能被阻止”,说明这些文件被Windows附件管理器写入了Zone.Identifier标记——PowerShell能绕过图形界面限制,直接批量清除该隐藏流,让整批文件恢复可编辑、可运行状态。
在目标文件夹内快速启动PowerShell
进入你要解锁的文件夹(例如 D:\Projects\DownloadedDocs),在空白处按住 Shift 键不放,再单击鼠标右键 → 选择【在此处打开PowerShell窗口】。
这一步必须用Shift+右键,普通右键菜单里没有这个选项;如果没看到该条目,说明系统禁用了此功能,需改用“以管理员身份运行PowerShell”后手动切换路径。
执行单层批量解锁命令
在打开的PowerShell窗口中,直接输入以下命令并回车:
Get-ChildItem | Unblock-File
该命令仅作用于当前文件夹内的所有文件,不会进入子文件夹。如果你确认所有待解锁文件都在同一级目录下,这条命令3秒内就能完成,无需等待提示,执行完光标直接回到新行即表示成功。
递归解锁含子文件夹的全部文件
若目标路径下存在多层嵌套文件夹(如 D:\Backup\2024\Q3\reports.docx),需强制遍历所有层级:
第一步:输入命令并回车
Get-ChildItem "D:\Backup" -Recurse | Unblock-File
第二步:将 "D:\Backup" 替换为你实际的根文件夹路径,注意末尾不要加反斜杠;-Recurse参数不可省略,否则子目录里的文件仍保持锁定状态。
第三步:等待命令返回(通常无任何输出),期间不要关闭窗口或按Ctrl+C——中断可能导致部分文件未被处理。
注意:该命令只清除Zone.Identifier流,不修改文件内容、不删除属性、不触发杀毒软件告警;但若某文件正被其他程序占用(如Excel已打开该表格),Unblock-File仍会跳过它并继续处理其余文件,不会报错中断。
验证是否全部解锁成功
任选一个原被锁定的文件,右键→属性→切换到“常规”选项卡,底部安全区域不再显示“此文件来自其他计算机……”提示,且【解除锁定】复选框呈灰色不可勾选状态,说明该文件的区域标记已被彻底清除。
这一步操作起来很简单,但务必逐个抽查3~5个不同子目录下的文件,因为PowerShell不会告诉你哪个文件失败了——它默认静默跳过异常项。

















