Delen via


Unblock-File

Blokkering van bestanden die zijn gedownload van internet opheffen.

Syntaxis

ByPath (Standaard)

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

ByLiteralPath

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

Description

Deze cmdlet werkt alleen op de Windows- en macOS-platformen.

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.

Voordat u de cmdlet Unblock-File gebruikt, controleert u het bestand en de bron ervan en controleert u of het veilig is om te openen.

Intern verwijdert de Unblock-File cmdlet de Zone.Identifier alternatieve gegevensstroom, die een waarde van 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

Met deze opdracht wordt het bestand PowerShellTips.chm gedeblokkeerd.

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

Voorbeeld 2: Meerdere bestanden deblokkeren

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.

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

Voorbeeld 3: Scripts zoeken en deblokkeren

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

De eerste opdracht gebruikt de parameter Stream van de cmdlet Get-Item om bestanden op te halen met de Zone.Identifier stream.

De tweede opdracht laat zien wat er gebeurt wanneer u een geblokkeerd script uitvoert in een PowerShell-sessie waarin het uitvoeringsbeleid wordt RemoteSigned. Met het beleid RemoteSigned kunt u geen scripts uitvoeren die zijn gedownload van internet, tenzij ze digitaal zijn ondertekend.

De derde opdracht maakt gebruik van de Unblock-File cmdlet om de blokkering van het script op te heffen, zodat het kan worden uitgevoerd in de sessie.

PS C:\> Get-Item * -Stream "Zone.Identifier" -ErrorAction SilentlyContinue
   FileName: C:\ps-test\Start-ActivityTracker.ps1

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

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

PS C:\> Get-Item C:\ps-test\Start-ActivityTracker.ps1 | Unblock-File

Parameters

-Confirm

Voordat u de cmdlet uitvoert, vraagt het systeem om bevestiging.

Parametereigenschappen

Type:SwitchParameter
Default value:False
Ondersteunt jokertekens:False
DontShow:False
Aliassen:Cf

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten: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 zorgen ervoor dat PowerShell geen tekens als escapesequenties interpreteert.

Parametereigenschappen

Type:

String[]

Default value:None
Ondersteunt jokertekens:False
DontShow:False
Aliassen:PSPath, LP

Parametersets

ByLiteralPath
Position:Named
Verplicht:True
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:True
Waarde van resterende argumenten:False

-Path

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

Parametereigenschappen

Type:

String[]

Default value:None
Ondersteunt jokertekens:True
DontShow:False

Parametersets

ByPath
Position:0
Verplicht:True
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-WhatIf

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

Parametereigenschappen

Type:SwitchParameter
Default value:False
Ondersteunt jokertekens:False
DontShow:False
Aliassen:Wi

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

CommonParameters

Deze cmdlet ondersteunt de algemene parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction en -WarningVariable. Zie about_CommonParametersvoor meer informatie.

Invoerwaarden

String

U kunt een bestandspad naar deze cmdlet doorsluisen.

Uitvoerwaarden

None

Deze cmdlet retourneert geen uitvoer.

Notities

  • Ondersteuning voor macOS is toegevoegd in PowerShell 7.
  • De Unblock-File cmdlet werkt alleen in bestandssysteemstations.
  • Unblock-File dezelfde bewerking uitvoert als de knop Deblokkeren in het dialoogvenster Eigenschappen in Verkenner.
  • Als u de cmdlet Unblock-File gebruikt voor een bestand dat niet wordt geblokkeerd, heeft de opdracht geen invloed op het geblokkeerde bestand en genereert de cmdlet geen fouten.