Sdílet prostřednictvím


Unblock-File

Odblokuje soubory, které byly staženy z internetu.

Syntax

ByPath (Výchozí)

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

ByLiteralPath

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

Description

Tato rutina funguje jenom na platformách Windows a macOS.

Rutina Unblock-File umožňuje otevřít soubory, které byly staženy z internetu. Odblokuje soubory skriptu PowerShellu, které byly staženy z internetu, abyste je mohli spustit, i když zásady spouštění PowerShellu RemoteSigned. Ve výchozím nastavení jsou tyto soubory zablokované kvůli ochraně počítače před nedůvěryhodnými soubory.

Před použitím rutiny Unblock-File zkontrolujte soubor a jeho zdroj a ověřte, že je bezpečné ho otevřít.

Cmdlet interně odebere alternativní datový proud Zone.Identifier s hodnotou , což indikuje, že byl stažen z internetu.

Další informace o zásadách spouštění PowerShellu najdete v tématu about_Execution_Policies.

Tato rutina byla zavedena ve Windows PowerShellu 3.0.

Příklady

Příklad 1: Odblokování souboru

Tento příkaz odblokuje soubor PowerShellTips.chm.

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

Příklad 2: Odblokování více souborů

Tento příkaz odblokuje všechny soubory v adresáři C:\Downloads, jehož názvy zahrnují "PowerShell". Nespustíte příkaz podobný tomuto, dokud neověříte, že jsou všechny soubory v bezpečí.

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

Příklad 3: Vyhledání a odblokování skriptů

Tento příkaz ukazuje, jak najít a odblokovat skripty PowerShellu.

První příkaz používá parametr Stream rutiny Get-Item k získání souborů se streamem Zone.Identifier.

Druhý příkaz ukazuje, co se stane, když spustíte blokovaný skript během relace v PowerShellu, kde je nastavená spouštěcí politika RemoteSigned. Zásada RemoteSigned vám brání ve spouštění skriptů stažených z internetu, pokud nejsou digitálně podepsány.

Třetí příkaz používá cmdlet Unblock-File k odblokování skriptu, aby se mohl spustit v relaci.

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

Parametry

-Confirm

Před spuštěním cmdletu vás vyzve k potvrzení.

Vlastnosti parametru

Typ:SwitchParameter
Default value:False
Podporuje zástupné znaky:False
DontShow:False
Aliasy:viz

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-LiteralPath

Určuje soubory, které se mají odblokovat. Na rozdíl od Pathse hodnota parametru LiteralPath používá přesně tak, jak je zadán. Žádný znak není interpretován jako zástupný znak. Pokud cesta obsahuje escape znaky, uzavřete ji do jednoduchých uvozovek ('). Jednoduché uvozovky říkají PowerShellu, aby žádné znaky neinterpretoval jako únikové sekvence.

Vlastnosti parametru

Typ:

String[]

Default value:None
Podporuje zástupné znaky:False
DontShow:False
Aliasy:PSPath, PO

Sady parametrů

ByLiteralPath
Position:Named
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False

-Path

Určuje soubory, které se mají odblokovat. Zástupné znaky jsou podporovány.

Vlastnosti parametru

Typ:

String[]

Default value:None
Podporuje zástupné znaky:True
DontShow:False

Sady parametrů

ByPath
Position:0
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-WhatIf

Ukazuje, co se stane, když se příkaz spustí. Příkazový modul nebyl spuštěn.

Vlastnosti parametru

Typ:SwitchParameter
Default value:False
Podporuje zástupné znaky:False
DontShow:False
Aliasy:Wi

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

CommonParameters

Tato rutina podporuje běžné parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction a -WarningVariable. Další informace najdete v about_CommonParameters.

Vstupy

String

Cestu k souboru můžete předat této rutině.

Výstupy

None

Tento cmdlet nevrátí žádný výstup.

Poznámky

  • Podpora pro macOS byla přidána v PowerShellu 7.
  • Cmdlet Unblock-File funguje pouze na jednotkách souborového systému.
  • Unblock-File provede stejnou operaci jako tlačítko Odblokovat v dialogovém okně Vlastnosti v Průzkumníku souborů.
  • Pokud použijete rutinu Unblock-File v souboru, který není blokovaný, příkaz nemá žádný vliv na odblokovaný soubor a rutina negeneruje chyby.