Aracılığıyla paylaş


Format-Hex

Bir dosyayı veya diğer girişi onaltılık olarak görüntüler.

Syntax

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

Description

Format-Hex Cmdlet bir dosyayı veya başka bir girişi onaltılık değerler olarak görüntüler. Bir karakterin çıkıştan uzaklığını belirlemek için, satırın en solundaki sayıyı bu karakterin sütununun en üstündeki sayıya ekleyin.

Format-Hex Cmdlet bozuk bir dosyanın veya dosya adı uzantısı olmayan bir dosyanın dosya türünü belirlemenize yardımcı olabilir. Bu cmdlet'i çalıştırabilir ve ardından dosya bilgilerini almak için onaltılık çıktıyı okuyabilirsiniz.

Bir dosyada kullanırken Format-Hex , cmdlet yeni satır karakterlerini yoksayar ve yeni satır karakterlerinin korunduğu tek bir dizede dosyanın içeriğinin tamamını döndürür.

Örnekler

Örnek 1: Dizenin onaltılık gösterimini alma

Bu komut bir dizenin onaltılık değerlerini döndürür.

'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

Merhaba Dünya dizesi, işlem hattına cmdlet'ine Format-Hex gönderilir. onaltılık çıkış Format-Hex , dizedeki her karakterin değerlerini gösterir.

Örnek 2: Onaltılık çıktıdan dosya türü bulma

Bu örnek, dosya türünü belirlemek için onaltılık çıkışı kullanır. Cmdlet dosyanın tam yolunu ve onaltılık değerleri görüntüler.

Aşağıdaki komutu test etmek için, yerel bilgisayarınızda var olan bir PDF dosyasının bir kopyasını oluşturun ve kopyalanan dosyayı File.t7f olarak yeniden adlandırın.

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

Cmdlet, Format-Hex geçerli dizinde File.t7fbir dosya adı belirtmek için Path parametresini kullanır. Dosya uzantısı .t7f yaygın değildir, ancak onaltılık çıktı %PDF bunun bir PDF dosyası olduğunu gösterir.

Örnek 3: Ham onaltılık çıkışı görüntüleme

Varsayılan olarak Format-Hex sayısal veri türlerinin sıkıştırılmış çıkışını tercih eder: değer yeterince küçükse tek bayt veya çift baytlık diziler kullanılır. Raw parametresi bu davranışı devre dışı bırakır.

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  ............è...

Çıkıştaki farka dikkat edin. Raw parametresi, sayıları Int32 türleri için doğru olan 4 baytlık değerler olarak görüntüler.

Parametreler

-Encoding

Çıkışın kodlamasını belirtir. Bu yalnızca giriş için [string] geçerlidir. parametresinin sayısal türler üzerinde hiçbir etkisi yoktur. Varsayılan değer şudur: ASCII.

Bu parametre için kabul edilebilir değerler aşağıdaki gibidir:

  • Ascii ASCII (7 bit) karakter kümesini kullanır.
  • BigEndianUnicode UTF-16'yi büyük endian bayt düzeniyle kullanır.
  • Unicode UtF-16'nın küçük endian bayt sırasını kullanır.
  • UTF7 UTF-7 kullanır.
  • UTF8 UTF-8 kullanır.
  • UTF32 UtF-32'yi little-endian bayt düzeniyle kullanır.

Girişteki ASCII olmayan karakterler, bilgi kaybına neden olan değişmez ? karakterler olarak çıkıştır.

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

Biçimlendirilecek nesneleri belirtir. Nesneleri içeren bir değişken girin veya nesneleri alan bir komut veya ifade yazın.

Yalnızca belirli skaler türler ve [system.io.fileinfo] desteklenir.

Desteklenen skaler türler şunlardır:

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

-LiteralPath

Dosyanın tam yolunu belirtir. LiteralPath değeri tam olarak yazıldığı gibi kullanılır. Bu parametre joker karakter kabul etmez. Dosyaların birden çok yolunu belirtmek için yolları virgülle ayırın. LiteralPath parametresi kaçış karakterleri içeriyorsa, yolu tek tırnak içine alın. PowerShell, tek tırnak içine alınmış bir dizedeki karakterleri kaçış dizisi olarak yorumlamaz. Daha fazla bilgi için bkz . about_Quoting_Rules.

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

-Path

Dosyaların yolunu belirtir. Geçerli konumu belirtmek için nokta (.) kullanın. Joker karakter (*) kabul edilir ve bir konumdaki tüm öğeleri belirtmek için kullanılabilir. Path parametresi kaçış karakterleri içeriyorsa, yolu tek tırnak içine alın. Dosyaların birden çok yolunu belirtmek için yolları virgülle ayırın.

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

-Raw

Varsayılan olarak Format-Hex sayısal veri türlerinin sıkıştırılmış çıkışını tercih eder: değer yeterince küçükse tek bayt veya çift baytlık diziler kullanılır. Raw parametresi bu davranışı devre dışı bırakır.

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

Girişler

String

Bir dizeyi bu cmdlet'e yöneltebilirsiniz.

Çıkışlar

ByteCollection

Bu cmdlet bir ByteCollection döndürür. Bu nesne bir bayt koleksiyonunu temsil eder. Bayt koleksiyonunu tarafından Format-Hexdöndürülen her çıktı satırı gibi biçimlendirilmiş bir dizeye dönüştüren yöntemleri içerir. Path veya LiteralPath parametresini belirtirseniz, nesnesi her bayt içeren dosyanın yolunu da içerir.

Notlar

Windows PowerShell için aşağıdaki diğer adları Format-Hexiçerir:

  • fhx

Çıktının en sağdaki sütunu baytları karakter olarak işlemeye çalışır:

Genel olarak, her bayt bir Unicode kod noktası olarak yorumlanır, yani:

  • Yazdırılabilir ASCII karakterleri her zaman doğru işlenir
  • Çok baytlı UTF-8 karakterleri hiçbir zaman doğru şekilde işlenmez
  • UTF-16 karakterleri yalnızca yüksek sıralı baytları olduğunda NULdoğru şekilde işlenir.