Powershell以取消阻止文件夹中的所有文件

Powershell以取消阻止文件夹中的所有文件,powershell,batch-file,Powershell,Batch File,尝试创建一个.bat文件,我可以将其放入一个文件夹中,运行该文件时将取消阻止该文件夹中的所有文件 @ECHO OFF PowerShell.exe -NoProfile -ExecutionPolicy Bypass -Command "& {get-childitem '%~dp0' | unblock-file}" EXIT …一直告诉我“术语“取消阻止文件”不被识别为cmdlet的名称…”无论我如何尝试格式化它,我都会出错吗 我正在尝试这样做,这样我就可以将.bat复制到文件夹中

尝试创建一个.bat文件,我可以将其放入一个文件夹中,运行该文件时将取消阻止该文件夹中的所有文件

@ECHO OFF
PowerShell.exe -NoProfile -ExecutionPolicy Bypass -Command "& {get-childitem '%~dp0' | unblock-file}"
EXIT
…一直告诉我“术语“取消阻止文件”不被识别为cmdlet的名称…”无论我如何尝试格式化它,我都会出错吗


我正在尝试这样做,这样我就可以将.bat复制到文件夹中(而不必复制.bat和.ps1),因此我认为单行powershell“调用”是可行的方法?

powershell 3.0提供了
取消阻止文件
命令。
升级您的PowerShell,脚本应该可以运行

测试并运行:

dir -r | unblock-file

递归取消阻止当前目录中的所有内容

此cmdlet是在Windows PowerShell 3.0中引入的,尽管这可能仍然是问题所在。更新到PowerShell 4.0使我发布的原始脚本正常工作,我按照此处的说明操作:谢谢!尝试将gci更改为:
get childitem{unblock file-Path$.FullName;}