Unblock-File
Débloque les fichiers téléchargés à partir d’Internet.
Syntax
Unblock-File
[-Path] <String[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Unblock-File
-LiteralPath <String[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Cette applet de commande fonctionne uniquement sur les plateformes Windows et macOS.
L’applet Unblock-File
de commande vous permet d’ouvrir des fichiers téléchargés à partir d’Internet. Il débloque les fichiers de script PowerShell qui ont été téléchargés à partir d’Internet afin que vous puissiez les exécuter, même lorsque la stratégie d’exécution PowerShell est RemoteSigned. Par défaut, ces fichiers sont bloqués pour protéger l'ordinateur contre les fichiers non approuvés.
Avant d’utiliser l’applet Unblock-File
de commande, passez en revue le fichier et sa source et vérifiez qu’il peut s’ouvrir en toute sécurité.
En interne, l’applet Unblock-File
de commande supprime le flux de 3
données alternatif Zone.Identifier, qui a la valeur pour indiquer qu’il a été téléchargé à partir d’Internet.
Pour plus d’informations sur les stratégies d’exécution de PowerShell, consultez about_Execution_Policies.
Cette applet de commande a été introduite dans Windows PowerShell 3.0.
Exemples
Exemple 1 : Débloquer un fichier
Cette commande débloque le PowerShellTips.chm
fichier.
PS C:\> Unblock-File -Path C:\Users\User01\Documents\Downloads\PowerShellTips.chm
Exemple 2 : Débloquer plusieurs fichiers
Cette commande débloque tous les fichiers du répertoire dont les C:\Downloads
noms incluent « PowerShell ». N'exécutez pas une commande similaire à celle-ci tant que vous n'avez pas vérifié que tous les fichiers étaient sûrs.
PS C:\> dir C:\Downloads\*PowerShell* | Unblock-File
Exemple 3 : Rechercher et débloquer des scripts
Cette commande montre comment rechercher et débloquer des scripts PowerShell.
La première commande utilise le paramètre Stream des fichiers get de l’applet de commande Get-Item avec le flux Zone.Identifier.
La deuxième commande montre ce qui se passe lorsque vous exécutez un script bloqué dans une session PowerShell dans laquelle la stratégie d’exécution est RemoteSigned. La stratégie RemoteSigned vous empêche d’exécuter des scripts téléchargés à partir d’Internet, sauf s’ils sont signés numériquement.
La troisième commande utilise l’applet Unblock-File
de commande pour débloquer le script afin qu’il puisse s’exécuter dans la session.
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
Paramètres
-Confirm
Vous demande une confirmation avant d’exécuter l’applet de commande.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-LiteralPath
Spécifie les fichiers à débloquer. Contrairement au paramètre Path, la valeur du paramètre LiteralPath est utilisée exactement telle qu'elle est tapée. Aucun caractère n’est interprété en tant que caractère générique. Si le chemin d’accès comprend des caractères d’échappement, placez-le entre guillemets simples ('
). Les guillemets simples indiquent à PowerShell de ne pas interpréter de caractères comme des séquences d’échappement.
Type: | String[] |
Aliases: | PSPath, LP |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Path
Spécifie les fichiers à débloquer. Les caractères génériques sont pris en charge.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-WhatIf
Montre ce qui se passe en cas d’exécution de l’applet de commande. L’applet de commande n’est pas exécutée.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Entrées
Vous pouvez diriger un chemin d’accès de fichier vers Unblock-File
.
Sorties
None
Cette applet de commande ne génère aucune sortie.
Notes
- La prise en charge de macOS a été ajoutée dans PowerShell 7.
- L’applet
Unblock-File
de commande fonctionne uniquement dans les lecteurs de système de fichiers. Unblock-File
effectue la même opération que le bouton Débloquer de la boîte de dialogue Propriétés dans Explorateur de fichiers.- Si vous utilisez l’applet
Unblock-File
de commande sur un fichier qui n’est pas bloqué, la commande n’a aucun effet sur le fichier débloqué et l’applet de commande ne génère pas d’erreurs.