问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

如何使用 PowerShell 解锁文件

创作时间:
作者:
@小白创作中心

如何使用 PowerShell 解锁文件

引用
1
来源
1.
https://www.delftstack.com/zh/howto/powershell/unblock-files-using-powershell/

在Windows操作系统中,从互联网下载的文件可能会被系统自动阻止,以防止潜在的安全威胁。这种情况下,用户会看到类似"此文件来自另一台计算机,可能被阻止以帮助保护这台计算机"的提示。本文将详细介绍如何使用PowerShell中的Unblock-File cmdlet来解除对这些文件的阻止。

使用 PowerShell 解除阻止文件

在本文中,我们将使用PowerShell原生cmdlet——Unblock-File,该命令在PowerShell 3.0中引入。Unblock-File cmdlet允许我们打开从互联网下载的文件。此外,它还可以解除阻止我们从互联网上下载的Windows PowerShell脚本文件,即使Windows PowerShell执行策略设置为RemoteSigned

这些文件默认被阻止,以保护计算机免受不可信文件的影响。

基本语法

Unblock-File [-Path*] <String[]> [-Confirm] [-WhatIf] [<CommonParameters>]

在内部,Unblock-File cmdlet会移除Zone.Identifier备用数据流,该数据流的值为3,以指示我们是从互联网下载的。有关Windows PowerShell执行策略的更多信息,请参见about_Execution_Policies。

参数

以下是我们可以与Unblock-File cmdlet一起使用的一些参数:

  • -Confirm:此参数在运行cmdlet之前提示您确认。
  • -LiteralPath:指定要解除阻止的文件。与Path不同,LiteralPath参数的值按输入的方式使用;没有字符被解释为通配符。如果路径包含转义字符,请将其括在单引号中。单引号告诉Windows PowerShell不要将字符解释为转义序列。
  • -Path:指定要解除阻止的文件。支持通配符字符。
  • -WhatIf:这显示如果cmdlet运行将会发生什么。cmdlet不执行。

示例

我们可以通过指定被阻止文件的文件路径来使用Unblock-File cmdlet:

Unblock-File -Path C:\Downloads\SampleFile.exe

我们使用PowerShell的主要原因是我们要么需要自动化过程,要么批量处理事情。由于我们可以在管道中使用Unblock-File命令,因此可以在查询文件夹中的所有内容后使用该命令。查询后,我们将处理Unblock-File命令中的所有文件:

dir -Path "C:\Downloads" -Recurse | Unblock-File

此外,Unblock-File cmdlet仅在文件系统驱动器中工作。Unblock-File cmdlet执行与文件资源管理器的属性对话框中的解除阻止按钮相同的操作。因此,如果您在未被阻止的文件上使用Unblock-File cmdlet,该命令不会影响已解除阻止的文件,并且cmdlet不会生成错误。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号