看懂:PowerShell 批量解锁文件的两个等效命令
在 Windows 系统中,从网络下载的文件会被系统自动添加「安全锁定」标记,双击运行时往往会弹出安全提示,甚至直接阻止程序执行。想要批量解除这个锁定,很多朋友会看到两个看起来不一样但效果完全相同的 PowerShell 命令:
powershell
dir | Unblock-File
powershell
Get-ChildItem | Unblock-File
今天就用最简单的话,讲清楚这两个命令的作用、关系和使用场景。
一、两个命令分别做什么?
1. 核心作用(完全一致)
两个命令的最终效果一模一样:列出当前文件夹下的所有文件,并一键批量解除所有文件的安全锁定。
无需手动右键文件→属性→解除锁定,一行命令就能搞定整个文件夹,效率提升百倍。
2. 命令拆解:为什么长得不一样?
命令1:dir | Unblock-File
dir:PowerShell 中的别名(快捷命令) ,是大家最熟悉的 CMD 风格命令,专门用来列出当前目录下的所有文件和文件夹,简单好记、输入快捷。|:管道符,作用是把左边命令的输出结果,传递给右边的命令处理。Unblock-File:PowerShell 专用解锁命令,专门解除 Windows 对文件的安全锁定。
命令2:Get-ChildItem | Unblock-File
Get-ChildItem:PowerShell 原生完整命令 ,功能和dir完全相同,也是列出当前目录下的所有文件和文件夹,是 PowerShell 官方标准写法。- 后面的
| Unblock-File作用和上面完全一致:接收文件列表,批量解锁。
二、核心结论:dir = Get-ChildItem
在 PowerShell 里,dir 就是 Get-ChildItem 的别名,就像「小名」和「大名」的关系:
- 功能100%相同
- 执行效果100%一致
- 适用场景100%通用
简单说:输入哪个都可以,怎么顺手怎么来。
- 习惯 CMD 操作、追求快捷:用
dir | Unblock-File - 追求规范、学习 PowerShell 标准语法:用
Get-ChildItem | Unblock-File
三、使用方法(超简单,一步到位)
-
打开需要解锁的文件所在的文件夹;
-
在文件夹地址栏输入
powershell,回车,快速打开 PowerShell 窗口; -
复制粘贴任意一个命令,回车执行即可:
powershelldir | Unblock-File或
powershellGet-ChildItem | Unblock-File -
执行完成后,所有文件的安全锁定全部解除,可直接运行/使用。
四、适用场景
- 批量解锁网络下载的压缩包、程序、脚本文件
- 解除文件夹内所有文件的运行限制
- 无需管理员权限(普通文件即可直接解锁)
总结
dir | Unblock-File和Get-ChildItem | Unblock-File功能完全相同,都是「当前文件夹所有文件批量解锁」;dir是Get-ChildItem的别名,一个简洁快捷,一个标准规范;- 日常使用任选其一,一键解决 Windows 文件安全锁定问题。
以后再看到这两个命令,不用纠结,直接用就对了!