Sdílet prostřednictvím


Format-Hex

Zobrazí soubor nebo jiný vstup jako šestnáctkový.

Syntax

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

Description

Rutina Format-Hex zobrazí soubor nebo jiný vstup jako šestnáctkové hodnoty. Pokud chcete zjistit posun znaku od výstupu, přidejte číslo na řádku úplně vlevo k číslu v horní části sloupce daného znaku.

Rutina Format-Hex vám může pomoct určit typ souboru poškozeného souboru nebo souboru, který nemusí mít příponu názvu souboru. Můžete spustit tuto rutinu a pak přečíst šestnáctkový výstup, abyste získali informace o souboru.

Při použití Format-Hex v souboru rutina ignoruje znaky nového řádku a vrátí celý obsah souboru v jednom řetězci se zachováním znaků nového řádku.

Příklady

Příklad 1: Získání šestnáctkové reprezentace řetězce

Tento příkaz vrátí šestnáctkové hodnoty řetězce.

'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

Řetězec Hello World se odešle do kanálu do rutinyFormat-Hex. Šestnáctkový výstup z Format-Hex ukazuje hodnoty jednotlivých znaků v řetězci.

Příklad 2: Vyhledání typu souboru z šestnáctkového výstupu

Tento příklad používá k určení typu souboru šestnáctkový výstup. Rutina zobrazí úplnou cestu k souboru a šestnáctkové hodnoty.

Pokud chcete otestovat následující příkaz, vytvořte kopii existujícího souboru PDF v místním počítači a přejmenujte zkopírovaný soubor na 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

Rutina Format-Hex používá parametr Path k určení názvu souboru v aktuálním adresáři File.t7f. Přípona souboru .t7f je neobvyklá, ale šestnáctkový výstup %PDF ukazuje, že se jedná o soubor PDF.

Parametry

-Encoding

Určuje kódování výstupu. To platí jenom pro [string] vstup. Parametr nemá žádný vliv na číselné typy. Výchozí hodnota je ASCII.

Přijatelné hodnoty pro tento parametr jsou následující:

  • ASCII Používá znakovou sadu ASCII (7bitová).
  • BigEndianUnicode Používá UTF-16 s pořadím bajtů big-endian.
  • Unicode Používá UTF-16 s pořadím bajtů little-endian.
  • UTF7 Používá UTF-7.
  • UTF8 Používá UTF-8.
  • UTF32 Používá UTF-32 s pořadím bajtů little-endian.

Znaky jiné než ASCII ve vstupu jsou výstupem jako literálové ? znaky, což vede ke ztrátě informací.

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

Používá se pro vstup kanálu. Vstup kanálu podporuje pouze [string] instance a [system.io.fileinfo] pro potrubí z Get-ChildItem.

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

-LiteralPath

Určuje úplnou cestu k souboru. Hodnota LiteralPath se používá přesně tak, jak je zadána. Tento parametr nepřijímá zástupné znaky. Pokud chcete zadat více cest k souborům, oddělte je čárkou. Pokud parametr LiteralPath obsahuje řídicí znaky, uzavřete cestu do jednoduchých uvozovek. PowerShell neinterpretuje žádné znaky v jednom řetězci s uvozovými znaky jako řídicí sekvence. Další informace najdete v tématu about_Quoting_Rules.

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

-Path

Určuje cestu k souborům. K určení aktuálního umístění použijte tečku (.). Zástupný znak (*) se přijímá a lze ho použít k určení všech položek v umístění. Pokud parametr Path obsahuje řídicí znaky, uzavřete cestu do jednoduchých uvozovek. Pokud chcete zadat více cest k souborům, oddělte je čárkou.

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

Vstupy

String

Do této rutiny můžete nasměrovat řetězec.

Výstupy

ByteCollection

Tato rutina vrátí ByteCollection. Tento objekt představuje kolekci bajtů. Obsahuje metody, které převádějí kolekci bajtů na řetězec formátovaný jako každý řádek výstupu vrácený nástrojem Format-Hex. Pokud zadáte parametr Path nebo LiteralPath , obsahuje objekt také cestu k souboru, který obsahuje jednotlivé bajty.

Poznámky

Sloupec výstupu nejvíce vpravo se pokusí vykreslit bajty jako znaky:

Obecně se každý bajt interpretuje jako bod kódu Unicode, což znamená, že:

  • Tisknutelné znaky ASCII se vždy vykreslují správně.
  • Vícebajtů UTF-8 znaků se nikdy nevykreslí správně
  • Znaky UTF-16 se vykreslují správně pouze v případě, že jejich bajt s vysokým pořadím je NUL.