Compartir a través de


Unblock-File

Desbloquea los archivos que se descargaron desde Internet.

Sintaxis

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

Description

El cmdlet Unblock-File le permite abrir archivos que se descargaron desde Internet. Desbloquea los archivos de script de PowerShell que se descargaron desde Internet para poder ejecutarlos, incluso cuando la directiva de ejecución de PowerShell se RemoteSigned. De forma predeterminada, estos archivos se bloquean para proteger el equipo de archivos que no son de confianza.

Antes de usar el cmdlet Unblock-File, revise el archivo y su origen y compruebe que es seguro abrirlo.

Internamente, el cmdlet Unblock-File quita el flujo de datos alternativo Zone.Identifier, que tiene un valor de "3" para indicar que se descargó de Internet.

Para obtener más información sobre las directivas de ejecución de PowerShell, consulte about_Execution_Policies.

Este cmdlet se introdujo en Windows PowerShell 3.0.

Ejemplos

Ejemplo 1: Desbloquear un archivo

PS C:\> Unblock-File -Path C:\Users\User01\Documents\Downloads\PowerShellTips.chm

Este comando desbloquea el archivo PowerShellTips.chm.

Ejemplo 2: Desbloquear varios archivos

PS C:\> dir C:\Downloads\*PowerShell* | Unblock-File

Este comando desbloquea todos los archivos del directorio C:\Downloads cuyos nombres incluyen "PowerShell". No ejecute un comando como este hasta que haya comprobado que todos los archivos son seguros.

Ejemplo 3: Buscar y desbloquear scripts

The first command uses the *Stream* parameter of the Get-Item cmdlet get files with the Zone.Identifier stream.Although you could pipe the output directly to the **Unblock-File** cmdlet (Get-Item * -Stream "Zone.Identifier" -ErrorAction SilentlyContinue | ForEach {Unblock-File $_.FileName}), it is prudent to review the file and confirm that it is safe before unblocking.
PS C:\> Get-Item * -Stream "Zone.Identifier" -ErrorAction SilentlyContinue
   FileName: C:\ps-test\Start-ActivityTracker.ps1

Stream                   Length
------                   ------
Zone.Identifier              26

The second command shows what happens when you run a blocked script in a PowerShell session in which the execution policy is **RemoteSigned**. The RemoteSigned policy prevents you from running scripts that are downloaded from the Internet unless they are digitally signed.
PS C:\> C:\ps-test\Start-ActivityTracker.ps1
c:\ps-test\Start-ActivityTracker.ps1 : File c:\ps-test\Start-ActivityTracker.ps1 cannot
be loaded. The file c:\ps-test\Start-ActivityTracker.ps1 is not digitally signed. The script
will not execute on the system. For more information, see about_Execution_Policies.

At line:1 char:1
+ c:\ps-test\Start-ActivityTracker.ps1
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : SecurityError: (:) [], PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess

The third command uses the **Unblock-File** cmdlet to unblock the script so it can run in the session.
PS C:\> Get-Item C:\ps-test\Start-ActivityTracker.ps1 | Unblock-File

Este comando muestra cómo buscar y desbloquear scripts de PowerShell.

Parámetros

-Confirm

Le pide confirmación antes de ejecutar el cmdlet.

Tipo:SwitchParameter
Alias:cf
Posición:Named
Valor predeterminado:False
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-LiteralPath

Especifica los archivos que se van a desbloquear. A diferencia de Path, el valor del parámetro LiteralPath se usa exactamente como se escribe. No se interpreta ningún carácter como caracteres comodín. Si la ruta de acceso incluye caracteres de escape, escríbala entre comillas simples. Las comillas simples indican a PowerShell que no interprete ningún carácter como secuencias de escape.

Tipo:String[]
Alias:PSPath
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-Path

Especifica los archivos que se van a desbloquear. Se admiten caracteres comodín.

Tipo:String[]
Posición:0
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:True

-WhatIf

Muestra lo que sucedería si el cmdlet se ejecuta. El cmdlet no se ejecuta.

Tipo:SwitchParameter
Alias:wi
Posición:Named
Valor predeterminado:False
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

Entradas

String

Puede canalizar una ruta de acceso de archivo a Deblock-File .

Salidas

None

Este cmdlet no genera ninguna salida.

Notas

  • El cmdlet Unblock-File solo funciona en unidades del sistema de archivos.
  • Desbloquear archivo realiza la misma operación que el botón Desbloquear en el cuadro de diálogo Propiedades de en el Explorador de archivos.
  • Si usa el cmdlet Unblock-File en un archivo que no está bloqueado, el comando no tiene ningún efecto en el archivo desbloqueado y el cmdlet no genera errores.