Delen via


Unblock-File

Blokkering van bestanden die zijn gedownload van internet opheffen.

Syntaxis

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

Description

Met de cmdlet Unblock-File kunt u bestanden openen die zijn gedownload van internet. Hiermee worden PowerShell-scriptbestanden gedeblokkeerd die zijn gedownload van internet, zodat u ze kunt uitvoeren, zelfs wanneer het PowerShell-uitvoeringsbeleid is RemoteSigned. Deze bestanden worden standaard geblokkeerd om de computer te beschermen tegen niet-vertrouwde bestanden.

Controleer het bestand en de bron ervan voordat u de cmdlet de blokkering opheffen en controleer of het veilig is om te openen.

Intern verwijdert de cmdlet Deblokkeren-bestand de alternatieve gegevensstroom Zone.Identifier, die de waarde 3 heeft om aan te geven dat deze is gedownload van internet.

Zie about_Execution_Policiesvoor meer informatie over PowerShell-uitvoeringsbeleid.

Deze cmdlet is geïntroduceerd in Windows PowerShell 3.0.

Voorbeelden

Voorbeeld 1: Een bestand deblokkeren

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

Met deze opdracht wordt het bestand PowerShellTips.chm opgeheven.

Voorbeeld 2: Meerdere bestanden deblokkeren

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

Met deze opdracht worden alle bestanden in de map C:\Downloads waarvan de namen 'PowerShell' bevatten, opgeheven. Voer geen opdracht als deze uit totdat u hebt gecontroleerd of alle bestanden veilig zijn.

Voorbeeld 3: Scripts zoeken en deblokkeren

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

Met deze opdracht ziet u hoe u PowerShell-scripts kunt zoeken en deblokkeren.

Parameters

-Confirm

U wordt gevraagd om bevestiging voordat u de cmdlet uitvoert.

Type:SwitchParameter
Aliassen:cf
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-LiteralPath

Hiermee geeft u de bestanden op om de blokkering op te heffen. In tegenstelling tot Pad, wordt de waarde van de parameter LiteralPath exact gebruikt zoals deze is getypt. Er worden geen tekens geïnterpreteerd als jokertekens. Als het pad escapetekens bevat, plaatst u het tussen enkele aanhalingstekens. Enkele aanhalingstekens geven PowerShell aan dat er geen tekens als escapereeksen moeten worden geïnterpreteerd.

Type:String[]
Aliassen:PSPath
Position:Named
Default value:None
Vereist:True
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-Path

Hiermee geeft u de bestanden op om de blokkering op te heffen. Jokertekens worden ondersteund.

Type:String[]
Position:0
Default value:None
Vereist:True
Pijplijninvoer accepteren:False
Jokertekens accepteren:True

-WhatIf

Toont wat er zou gebeuren als de cmdlet wordt uitgevoerd. De cmdlet wordt niet uitgevoerd.

Type:SwitchParameter
Aliassen:wi
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

Invoerwaarden

String

U kunt een bestandspad doorsluisen naar Deblokkeren.

Uitvoerwaarden

None

Met deze cmdlet wordt geen uitvoer gegenereerd.

Notities

  • De cmdlet Deblokkeren-bestand opheffen werkt alleen in bestandssysteemstations.
  • Deblokkeren-Bestand opheffen dezelfde bewerking uitvoert als de knop deblokkeren in het dialoogvenster Eigenschappen in Verkenner.
  • Als u de cmdlet Deblokkeren voor een bestand dat niet wordt geblokkeerd, gebruikt, heeft de opdracht geen invloed op het geblokkeerde bestand en genereert de cmdlet geen fouten.