当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 使用 PowerShell 解锁文件

作者:精品下载站 日期:2024-12-14 17:26:50 浏览:14 分类:玩电脑

使用 PowerShell 解锁文件


PowerShell 中的 Unblock-File cmdlet 用于取消阻止从 Internet 下载的文件。使用该命令可以递归地解除对目录下所有文件的阻止,并解除对Powershell脚本(ps1)文件的阻止。

[玩转系统] 使用 PowerShell 解锁文件

以下 PowerShell 脚本使用 Unblock-File cmdlet 从从 Internet 下载的文件中删除 Zone.Identifier 流。

Unblock-File -Path D:\PS\ps-convert.xlsx  

上述 PowerShell 脚本的输出会解锁给定目录中指定的文件,并将其标记为可以安全执行,从而绕过任何安全限制。

在本教程中,我们将讨论如何取消阻止一个文件、取消阻止文件夹中的多个文件以及取消阻止从互联网或不受信任的来源下载的 exe 和 ps1 文件。

解锁 Exe 文件

要取消阻止 exe 文件,您可以使用 Unblock-File cmdlet,后跟文件的完整路径。

Unblock-File -Path D:\PS\agar.exe

取消阻止目录中的所有文件

您可以使用 Get-ChildItem cmdlet 取消阻止指定目录中的所有文件来检索文件,然后将它们通过管道传输到 Unblock-File cmdlet。

Get-ChildItem -Path "D:\PS\ps-study\" | Unblock-File 

在上面的 PowerShell 脚本中,Get-ChildItem 命令使用 Path 参数从指定目录检索所有文件,并将它们通过管道传输到 Unblock-File cmdlet 以取消阻止文件夹中的所有文件。

递归解除阻止文件

要取消阻止指定目标目录及其子目录中的文件,可以将 -Recurse 参数与 Get-ChildItem 结合使用。

Get-ChildItem -Path "D:\PS\ps-study\" -Recurse | Unblock-File 

在上面的 PowerShell 脚本中,Get-ChildItem 命令使用参数 -Recurse 递归地检索指定目标目录及其子文件夹中的所有文件,并将它们通过管道传输到 Unblock-FileUnblock-File 命令可取消阻止所有文件并允许您打开和使用这些文件。

解除阻止多个文件

您可以通过提供文件路径列表同时取消阻止多个文件。

# List of file paths
$Files = "D:\PS\ps-study\ps-convert.xlsx", "D:\PS\ps-study\ps-script.ps1","D:\argr.exe" 

foreach ($File in $Files) {
    Unblock-File -Path $File
}

在上面的 PowerShell 脚本中,$Files 变量存储文件路径列表。 $Files 数组中的每个文件路径都使用 foreach 循环进行一一处理。 Unblock-File cmdlet 用于每个文件路径来取消阻止文件。

解锁网络共享中的文件

您可以在 PowerShell 中使用 Unblock-File cmdlet 取消阻止位于使用 UNC 路径共享的网络中的文件。

Unblock-File -Path "\incorp-eu-it\share\software\setupScreenSaver.ps1"

在上面的 PowerShell 脚本中,Unblock-File cmdlet 取消阻止位于网络共享路径中的 .ps1 文件。

结论

希望上面关于如何使用 PowerShell Unblock-File cmdlet 解除阻止文件以及解除阻止目录和子目录中的所有文件的文章对您有所帮助。

在使用 Unblock-File cmdlet 之前,请检查文件及其源。在打开文件之前,请务必验证打开该文件是否安全。

您可以在 ShellGeek 主页上找到有关 PowerShell Active Directory 命令和 PowerShell 基础知识的更多主题。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯