Unblock-File
Desbloqueia ficheiros que foram descarregados da Internet.
Sintaxe
Unblock-File
[-Path] <String[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Unblock-File
-LiteralPath <String[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
O cmdlet Unblock-File permite abrir arquivos baixados da Internet. Ele desbloqueia os arquivos de script do PowerShell que foram baixados da Internet para que você possa executá-los, mesmo quando a política de execução do PowerShell estiver RemoteSigned. Por padrão, esses arquivos são bloqueados para proteger o computador de arquivos não confiáveis.
Antes de usar o cmdlet Unblock-File, examine o arquivo e sua origem e verifique se é seguro abri-lo.
Internamente, o cmdlet Unblock-File remove o fluxo de dados alternativo Zone.Identifier, que tem um valor "3" para indicar que foi baixado da Internet.
Para obter mais informações sobre políticas de execução do PowerShell, consulte about_Execution_Policies.
Este cmdlet foi introduzido no Windows PowerShell 3.0.
Exemplos
Exemplo 1: Desbloquear um ficheiro
PS C:\> Unblock-File -Path C:\Users\User01\Documents\Downloads\PowerShellTips.chm
Este comando desbloqueia o arquivo PowerShellTips.chm.
Exemplo 2: Desbloquear vários ficheiros
PS C:\> dir C:\Downloads\*PowerShell* | Unblock-File
Este comando desbloqueia todos os arquivos no diretório C:\Downloads cujos nomes incluem "PowerShell". Não execute um comando como este até ter verificado que todos os ficheiros estão seguros.
Exemplo 3: Localizar e 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 mostra como localizar e desbloquear scripts do PowerShell.
Parâmetros
-Confirm
Solicita confirmação antes de executar o cmdlet.
Tipo: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-LiteralPath
Especifica os arquivos a serem desbloqueados. Ao contrário Path, o valor do parâmetro LiteralPath é usado exatamente como é digitado. Nenhum caractere é interpretado como curinga. Se o caminho incluir caracteres de escape, coloque-o entre aspas simples. Aspas simples dizem ao PowerShell para não interpretar nenhum caractere como sequências de escape.
Tipo: | String[] |
Aliases: | PSPath |
Position: | Named |
Default value: | None |
Necessário: | True |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | False |
-Path
Especifica os arquivos a serem desbloqueados. Caracteres curinga são suportados.
Tipo: | String[] |
Position: | 0 |
Default value: | None |
Necessário: | True |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | True |
-WhatIf
Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.
Tipo: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
Entradas
Você pode canalizar um caminho de arquivo para Unblock-File .
Saídas
None
Este cmdlet não gera nenhuma saída.
Notas
- O cmdlet Unblock-File funciona apenas em unidades do sistema de arquivos.
- Desbloquear Arquivo executa a mesma operação que o botão Desbloquear na caixa de diálogo Propriedades no Explorador de Arquivos.
- Se você usar o cmdlet Unblock-File em um arquivo que não está bloqueado, o comando não terá efeito sobre o arquivo desbloqueado e o cmdlet não gerará erros.