Unblock-File
Avblockera filer som har laddats ned från Internet.
Syntax
Unblock-File
[-Path] <String[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Unblock-File
-LiteralPath <String[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Den här cmdleten fungerar bara på Windows- och macOS-plattformarna.
Med Unblock-File
cmdleten kan du öppna filer som har laddats ned från Internet. PowerShell-skriptfiler som har laddats ned från Internet avblockeras så att du kan köra dem, även när PowerShell-körningsprincipen är RemoteSigned. Som standard blockeras dessa filer för att skydda datorn från ej betrodda filer.
Innan du använder cmdleten Unblock-File
granskar du filen och dess källa och kontrollerar att det är säkert att öppna.
Internt tar cmdleten Unblock-File
bort den alternativa dataströmmen Zone.Identifier , som har värdet 3
för för att indikera att den laddades ned från Internet.
Mer information om PowerShell-körningsprinciper finns i about_Execution_Policies.
Den här cmdleten introducerades i Windows PowerShell 3.0.
Exempel
Exempel 1: Avblockera en fil
Det här kommandot avblockera PowerShellTips.chm
filen.
PS C:\> Unblock-File -Path C:\Users\User01\Documents\Downloads\PowerShellTips.chm
Exempel 2: Avblockera flera filer
Det här kommandot avblockera alla filer i katalogen C:\Downloads
vars namn inkluderar "PowerShell". Kör inte ett kommando som det här förrän du har kontrollerat att alla filer är säkra.
PS C:\> dir C:\Downloads\*PowerShell* | Unblock-File
Exempel 3: Hitta och avblockera skript
Det här kommandot visar hur du hittar och avblockera PowerShell-skript.
Det första kommandot använder Stream-parametern för get-item-cmdleten hämta filer med zone.identifier-strömmen.
Det andra kommandot visar vad som händer när du kör ett blockerat skript i en PowerShell-session där körningsprincipen är RemoteSigned. RemoteSigned-principen hindrar dig från att köra skript som laddas ned från Internet om de inte är digitalt signerade.
Det tredje kommandot använder cmdleten Unblock-File
för att avblockera skriptet så att det kan köras i sessionen.
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
Parametrar
-Confirm
Uppmanar dig att bekräfta innan du kör cmdleten.
Typ: | SwitchParameter |
Alias: | cf |
Position: | Named |
Standardvärde: | False |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-LiteralPath
Anger vilka filer som ska avblockeras. Till skillnad från Path används värdet för parametern LiteralPath precis som det skrivs. Inga tecken tolkas som jokertecken. Om sökvägen innehåller escape-tecken omger du den med enkla citattecken ('
). Enkla citattecken gör att PowerShell inte tolkar några tecken som escape-sekvenser.
Typ: | String[] |
Alias: | PSPath, LP |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-Path
Anger vilka filer som ska avblockeras. Jokertecken stöds.
Typ: | String[] |
Position: | 0 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | True |
-WhatIf
Visar vad som skulle hända om cmdleten kördes. Cmdleten körs inte.
Typ: | SwitchParameter |
Alias: | wi |
Position: | Named |
Standardvärde: | False |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
Indata
Du kan skicka en filsökväg till den här cmdleten.
Utdata
None
Den här cmdleten returnerar inga utdata.
Kommentarer
- Stöd för macOS har lagts till i PowerShell 7.
- Cmdleten
Unblock-File
fungerar endast på filsystemenheter. Unblock-File
utför samma åtgärd som knappen Avblockera i dialogrutan Egenskaper i Istraživač datoteka.- Om du använder cmdleten
Unblock-File
på en fil som inte är blockerad har kommandot ingen effekt på den avblockerade filen och cmdleten genererar inga fel.