Partager via


Format-Hex

Affiche un fichier ou une autre entrée en hexadécimal.

Syntax

Format-Hex
      [-Path] <string[]>
      [<CommonParameters>]
Format-Hex
      -LiteralPath <string[]>
      [<CommonParameters>]
Format-Hex
      -InputObject <Object>
      [-Encoding <string>]
      [-Raw]
      [<CommonParameters>]

Description

L’applet Format-Hex de commande affiche un fichier ou une autre entrée sous forme de valeurs hexadécimales. Pour déterminer le décalage d’un caractère de la sortie, ajoutez le nombre le plus à gauche de la ligne au nombre situé en haut de la colonne pour ce caractère.

L’applet Format-Hex de commande peut vous aider à déterminer le type de fichier d’un fichier endommagé ou un fichier qui n’a peut-être pas d’extension de nom de fichier. Vous pouvez exécuter cette applet de commande, puis lire la sortie hexadécimale pour obtenir des informations sur le fichier.

Lors de l’utilisation Format-Hex sur un fichier, l’applet de commande ignore les caractères newline et retourne l’intégralité du contenu d’un fichier dans une chaîne avec les caractères de nouvelle ligne conservés.

Exemples

Exemple 1 : Obtenir la représentation hexadécimale d’une chaîne

Cette commande retourne les valeurs hexadécimales d’une chaîne.

'Hello World' | Format-Hex

00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

00000000   48 65 6C 6C 6F 20 57 6F 72 6C 64                 Hello World

La chaîne Hello World est envoyée au pipeline à l’applet de Format-Hex commande. La sortie hexadécimale à partir d’affiche Format-Hex les valeurs de chaque caractère dans la chaîne.

Exemple 2 : Rechercher un type de fichier à partir d’une sortie hexadécimale

Cet exemple utilise la sortie hexadécimale pour déterminer le type de fichier. L’applet de commande affiche le chemin complet du fichier et les valeurs hexadécimales.

Pour tester la commande suivante, effectuez une copie d’un fichier PDF existant sur votre ordinateur local et renommez le fichier copié en File.t7f.

Format-Hex -Path .\File.t7f

Path: C:\Test\File.t7f

           00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

00000000   25 50 44 46 2D 31 2E 35 0D 0A 25 B5 B5 B5 B5 0D  %PDF-1.5..%????.
00000010   0A 31 20 30 20 6F 62 6A 0D 0A 3C 3C 2F 54 79 70  .1 0 obj..<</Typ
00000020   65 2F 43 61 74 61 6C 6F 67 2F 50 61 67 65 73 20  e/Catalog/Pages

L’applet Format-Hex de commande utilise le paramètre Path pour spécifier un nom de fichier dans le répertoire actif. File.t7f L’extension .t7f de fichier est rare, mais la sortie %PDF hexadécimale indique qu’il s’agit d’un fichier PDF.

Exemple 3 : Afficher la sortie hexadécimale brute

Par défaut Format-Hex , opte pour la sortie compacte des types de données numériques : des séquences d’octets uniques ou double octets sont utilisées si la valeur est suffisamment petite. Le paramètre Raw désactive ce comportement.

PS> 1,2,3,1000 | Format-Hex

           Path:

           00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

00000000   01 02 03 E8 03                                   ...è.


PS> 1,2,3,1000 | Format-Hex -Raw

           Path:

           00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

00000000   01 00 00 00 02 00 00 00 03 00 00 00 E8 03 00 00  ............è...

Notez la différence dans la sortie. Le paramètre Raw affiche les nombres sous forme de valeurs de 4 octets, true à leurs types Int32 .

Paramètres

-Encoding

Spécifie l’encodage de la sortie. Cela s’applique uniquement à l’entrée [string] . Le paramètre n’a aucun effet sur les types numériques. La valeur par défaut est ASCII.

Les valeurs acceptables pour ce paramètre sont les suivantes :

  • Ascii Utilise le jeu de caractères ASCII (7 bits).
  • BigEndianUnicode Utilise UTF-16 avec l’ordre d’octet big-endian.
  • Unicode Utilise UTF-16 avec l’ordre d’octet little-endian.
  • UTF7 Utilise UTF-7.
  • UTF8 Utilise UTF-8.
  • UTF32 Utilise UTF-32 avec l’ordre d’octet little-endian.

Les caractères non ASCII dans l’entrée sont générés en tant que caractères littéraux ? entraînant une perte d’informations.

Type:String
Accepted values:ASCII, BigEndianUnicode, Unicode, UTF7, UTF8, UTF32
Position:Named
Default value:ASCII
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Spécifie les objets à mettre en forme. Entrez une variable contenant les objets, ou tapez une commande ou une expression qui les obtient.

Seuls certains types scalaires et [system.io.fileinfo] sont pris en charge.

Les types scalaires pris en charge sont les suivants :

  • [string]
  • [byte]
  • [int], [int32]
  • [long], [int64]
Type:Object
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-LiteralPath

Spécifie le chemin d’accès complet à un fichier. La valeur de LiteralPath est utilisée exactement comme elle est typée. Ce paramètre n’accepte pas les caractères génériques carte. Pour spécifier plusieurs chemins d’accès aux fichiers, séparez les chemins d’accès par une virgule. Si le paramètre LiteralPath inclut des caractères d’échappement, placez le chemin entre guillemets simples. PowerShell n’interprète aucun caractère dans une chaîne entre guillemets unique comme séquences d’échappement. Pour plus d’informations, consultez about_Quoting_Rules.

Type:String[]
Aliases:PSPath
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Path

Spécifie le chemin d’accès aux fichiers. Utilisez un point (.) pour spécifier l’emplacement actuel. Le caractère wild carte (*) est accepté et peut être utilisé pour spécifier tous les éléments d’un emplacement. Si le paramètre Path inclut des caractères d’échappement, placez le chemin entre guillemets simples. Pour spécifier plusieurs chemins d’accès aux fichiers, séparez les chemins d’accès par une virgule.

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:True

-Raw

Par défaut Format-Hex , opte pour la sortie compacte des types de données numériques : des séquences d’octets uniques ou double octets sont utilisées si la valeur est suffisamment petite. Le paramètre Raw désactive ce comportement.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Entrées

String

Vous pouvez diriger une chaîne vers cette applet de commande.

Sorties

ByteCollection

Cette applet de commande retourne un ByteCollection. Cet objet représente une collection d’octets. Il inclut des méthodes qui convertissent la collection d’octets en chaîne mise en forme comme chaque ligne de sortie retournée par Format-Hex. Si vous spécifiez le paramètre Path ou LiteralPath , l’objet contient également le chemin d’accès du fichier qui contient chaque octet.

Notes

Windows PowerShell inclut les alias suivants pour Format-Hex:

  • fhx

La colonne de sortie la plus à droite tente d’afficher les octets sous forme de caractères :

En règle générale, chaque octet est interprété comme un point de code Unicode, ce qui signifie que :

  • Les caractères ASCII imprimables sont toujours affichés correctement
  • Les caractères UTF-8 multioctets ne s’affichent jamais correctement
  • Les caractères UTF-16 s’affichent correctement uniquement si leur octet d’ordre élevé se produit NUL.