मैं विंडोज 7 में मूल रूप से फ़ाइल की बाइनरी सामग्री कैसे देख सकता हूं? (क्या यह संभव है।)


35

मेरे पास एक फाइल है, 500MB से थोड़ी बड़ी है, जो कुछ समस्याओं का कारण बन रही है।

मेरा मानना ​​है कि इस मुद्दे का इस्तेमाल लाइन (ईओएल) सम्मेलन के अंत में है। मैं फ़ाइल के ईओएल सम्मेलन की पुष्टि करने के लिए फ़ाइल को इसके निर्बाध कच्चे रूप (1) में देखना चाहूंगा।

मैं विंडोज 7 में निर्मित कुछ का उपयोग करके किसी फ़ाइल के "बाइनरी" को कैसे देख सकता हूं? मैं कुछ भी अतिरिक्त डाउनलोड करने से बचना पसंद करूंगा।

(1) मेरे सहकर्मी और मैंने पाठ संपादकों में फ़ाइल खोली, और वे लाइनें दिखाते हैं जैसे कि कोई अपेक्षा करता है। लेकिन दोनों टेक्स्ट एडिटर अलग-अलग ईओएल सम्मेलनों के साथ फाइलें खोलेंगे और उनकी स्वचालित रूप से व्याख्या करेंगे। (TextEdit और Emacs 24.2। Emacs के लिए मैंने एक दूसरी फाइल बनाई थी, जिसमें पहले 4K बाइट्स के साथ head -c4096एक linux बॉक्स का उपयोग किया गया था और इसे मेरे windows बॉक्स से खोला गया था।

मैंने Emacs में हेक्स-मोड का उपयोग करने का प्रयास किया, लेकिन जब मैं हेक्स-मोड और पाठ-मोड पर वापस गया, तो बफर की सामग्री बदल गई थी, प्रत्येक पंक्ति के अंत में एक दृश्यमान ^ M जोड़ते हुए, इसलिए मैं नहीं हूं उस पर भरोसा करते हुए।

मेरा मानना ​​है कि मुद्दा इस्तेमाल होने वाले लाइन कैरेक्टर (एस) के अंत में हो सकता है। संपादकों ने मेरे सहकर्मी और मैंने (1) बस स्वचालित रूप से लाइन कन्वेंशन के अंत को मान्यता दी और हमें लाइनें दिखाईं। और अन्य सबूतों के आधार पर, मेरा मानना ​​है कि ईओएल सम्मेलन केवल गाड़ी वापसी है। (२) ही लौटना।

यह जानने के लिए कि वास्तव में फ़ाइल में क्या है, मैं फ़ाइल की द्विआधारी सामग्री को देखना चाहूंगा, या फ़ाइल के कम से कम कुछ हज़ार बाइट्स, अधिमानतः हेक्स में, हालांकि मैं दशमलव या ऑक्टल के साथ काम कर सकता हूं। बस एक शून्य बहुत सुंदर लग रही होगी।

अद्यतन करें

एक सुझाव को छोड़कर DEBUG, नीचे दिए गए सभी उत्तर कुछ हद तक या किसी अन्य कार्य के लिए काम करते हैं। मैंने उनमें से प्रत्येक को मददगार के रूप में अप-वोट किया है। मेरा प्रश्न अशिक्षित था। प्रत्येक सुझाए गए समाधान के परीक्षण में मैंने पाया कि मैं वास्तव में साइड हेक्स और टेक्स्ट कंटेंट को देखना चाहता था, और मैं चाहता था कि यह कुछ ऐसा हो, जहां जब मैं अपने कर्सर को किसी चीज पर रखूं, या तो बाइट मान या टेक्स्ट कैरेक्टर, मैचिंग चीज पर। दूसरे पक्ष पर प्रकाश डाला जाएगा।

मैंने वास्तव में अपनी समस्या हल की जब Emacs hexl-mode ने "सही ढंग से" काम करना शुरू किया। इसलिए मैंने इनमें से किसी भी उत्तर का उपयोग नहीं किया, केवल उनका परीक्षण किया। (वास्तव में अजीब Emacs व्यवहार की जांच करनी चाहिए और बग रिपोर्ट दर्ज करनी चाहिए।)


संभवतः Cygwin के अंतर्गत किसी प्रकार का टूल है, लेकिन इसके लिए Cygwin को इंस्टॉल करने की आवश्यकता होगी। या यदि आपके पास, उदाहरण के लिए, जावा आपके बॉक्स पर स्थापित है, तो जावा में एक हेक्स डंप प्रोग्राम लिखना काफी सरल कार्य होगा।
डैनियल आर हिक्स

जवाबों:


11

आपको "हेक्स संपादक" की आवश्यकता है। मैंने वर्षों से "हेक्स एडिटर नियो" का उपयोग किया है और यह बहुत अच्छा है। यह मुफ़्त और सशुल्क संस्करणों में उपलब्ध है । (और मुझे यकीन है कि अन्य समान उपकरण उपलब्ध हैं।)


4
मैंने पूछा था कि कैसे, विंडोज 7 के अलावा कुछ भी बिना, क्योंकि मुझे अतिरिक्त कार्यक्रम जोड़ना पसंद नहीं है क्योंकि 1) कई इस तरह से स्थापित होते हैं कि मेरे पास अधिकार नहीं हैं। 2) कुछ बौने लगते हैं। कहा कि हेक्स संपादक नियो एक अच्छी सिफारिश लगती है। +1
शैनन सेवरेंस

1
zbdirectory एक स्टैंडअलोन प्रोग्राम है जिसे स्थापित करने या किसी विशेष अधिकार की आवश्यकता नहीं है और इसमें Alt-H या hex मोड है
sgmoore

कहा, गलत, अस्थिर सहित मेरी सभी आवश्यकताओं को पूरा किया। हेक्स संपादक नियो भी तेज था, और मेरे टूल बैग में जोड़ा गया है।
शैनन सेवरेंस

1. अन्य संपादक मूल निवासी नहीं हैं। 2. फ़ाइल प्रबंधक इस उद्देश्य के लिए अच्छे हैं और बहुत सारे हैं जो पोर्टेबल हैं। 3. टाइप कमांड कंटेंट को मूल रूप से प्रदर्शित कर सकता है और इसमें उपयोगी फिल्टर (जैसे पेज द्वारा पेज) है।
Overmind

37

यदि आपके पास 5.0 या उसके बाद का संस्करण है, तो आप powershellअंतर्निहित फ़ंक्शन का उपयोग कर सकते हैंFormat-Hex

PS:21 C:\Temp >Format-Hex application.exe

            0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F

00000000   42 4D 5E 00 00 00 00 00 00 00 36 00 00 00 28 00  BM^.......6...(. 
00000010   00 00 0A 00 00 00 01 00 00 00 01 00 20 00 00 00  ............ ... 
00000020   00 00 00 00 00 00 C4 0E 00 00 C4 0E 00 00 00 00  ......Ä...Ä..... 
00000030   00 00 00 00 00 00 B7 59 71 FF B7 59 71 FF B7 59  ......•Yq.•Yq.•Y 
00000040   71 FF B7 59 71 FF B7 59 71 FF B7 59 71 FF B7 59  q.•Yq.•Yq.•Yq.•Y 
00000050   71 FF B7 59 71 FF B7 59 71 FF B7 59 71 FF        q.•Yq.•Yq.•Yq.

4
मैं स्पष्ट रूप से आश्चर्यचकित हूं कि यह शीर्ष उत्तर नहीं है। यह विंडोज़ में बिल्ट-इन टूल का उपयोग करने का सही तरीका है। यदि आप किसी फ़ाइल में आउटपुट लिखना चाहते हैं, तो आप> स्वरूप-हेक्स एप्लिकेशन। Exe> out.txt
techdude

यह अच्छा लगता है, लेकिन Format-Hexमेरे पॉवरशेल में उपलब्ध नहीं है; मुझे बस एक "मान्यता प्राप्त नहीं" त्रुटि
मिलती है

JamieSee के अनुसार, यह स्पष्ट रूप से जोड़ा नहीं गया जब तक कि 5.0 शक्तियां नहीं।
टेकडूड

26

में निर्मित, त्वरित और गंदा: शुरू powershell, निष्पादित:

gc -encoding byte -TotalCount 100 "your_file_path" |% {write-host ("{0:x}" -f $_) -noNewline " "}; write-host   

TotalCount उन बाइट्स की गिनती है जिन्हें आप फ़ाइल से पढ़ना चाहते हैं।

बहुत अधिक पॉलिश / व्यावहारिक संस्करण प्राप्त करने के लिए Google 'शक्तिकृत हेक्सडंप'।

यदि आपके पास विंडोज रिसोर्स किट टूल्स हैं (बिलकुल नहीं बनाया गया है, लेकिन बंद है) तो आप cmd लाइन यूटिलिटी भी कह सकते हैं list.exe। यह हेक्स मोड के साथ एक छोटा संपादक है। विशेष रूप से बड़ी फ़ाइलों के साथ काम करने के लिए डिज़ाइन किया गया:

सूची पाठ फ़ाइल उपकरण (सूची) एक कमांड लाइन उपकरण है जो एक या अधिक पाठ फ़ाइलों को प्रदर्शित करता है और खोजता है। अन्य टेक्स्ट डिस्प्ले टूल्स के विपरीत, जब आप इसे खोलते हैं तो सूची पूरी फ़ाइल को मेमोरी में नहीं पढ़ती है। यह एक हेक्साडेसिमल प्रारूप में एक उपयोगकर्ता को एक पाठ फ़ाइल को संपादित करने की अनुमति देता है।

सूची पाठ या लॉग फ़ाइलों को दूरस्थ रूप से प्रदर्शित करने के लिए उपयोगी है, और उन सर्वरों पर उपयोग के लिए जहां व्यवस्थापक सिस्टम के प्रदर्शन में गिरावट के साथ चिंतित हैं।


1
अब तक, यह समाधान निकटतम है जो मैं पूछ रहा था।
शैनन सेवरेंस

1
अच्छा, सरल, पहले से स्थापित। मैंने लेखन-मेजबान ("{0: X2}" को 0x0A को "0A" के रूप में प्रकट करने के लिए मजबूर करने के लिए प्रारूप को बदल दिया, "2" नहीं, 2 के लिए ऊपरी मामला 2 अंक के लिए क्योंकि मुझे यह पसंद है
एडम स्ट्रूगन

1
List.exe एकदम सही थी - list.exe /?मदद कमांड बहुत जानकारी नहीं देता है, लेकिन एक बार संपादक के अंदर सिर्फ ?कमांड देखने के लिए मारा । Hहेक्स संपादक को खोलता है, और F1जिस तरह से हेक्स प्रदर्शित किया जाता है, वह टॉगल करता है
Coruscate5

7

यह भी XP के बाद सब कुछ पर काम करता है:

certutil -encodehex MyProgram.exe MyProgram.txt

XP को यहां से Windows Server 2003 व्यवस्थापन उपकरण पैक की आवश्यकता है:

https://www.microsoft.com/en-us/download/details.aspx?id=16770


विंडोज़ पर सबसे पोर्टेबल और बैक कॉम्पेटेबल सॉल्यूशन, विंडोज़ बैच स्क्रिप्ट से भी इस्तेमाल किया जा सकता है, चकित क्यों यह अभी भी सभी उत्तरों के शीर्ष में नहीं है
एंड्री

6

फ़ाइल को .COMएक्सटेंशन वाले नाम पर कॉपी करें, जहां आधार नाम आठ अक्षरों से अधिक नहीं है। रन

DEBUG your_filename

यह एक ' -' संकेत देगा। प्रकार

DEnter

बार-बार करने के लिए एक समय में isplay फ़ाइल 128 बाइट्स। प्रकार

D पता Enter

पते पर शुरू होने वाले 128 बाइट्स को प्रदर्शित करने के लिए , जिसे हेक्स में टाइप किया जाना चाहिए, जहां फ़ाइल की शुरुआत का पता 100 है

D पता 1 पता 2 Enter

से प्रदर्शित करने के लिए पता 1 को पता 2 । प्रकार

D पता Lसंख्या Enter

पता पर शुरू होने वाले अंक बाइट्स (लंबाई) को प्रदर्शित करने के लिए ।  अंक भी हेक्स में दर्ज किया गया है। छोड़ने के लिए उपयोग करें ।Q

उदाहरण के लिए,

C:\Users\scott\Documents> debug thispost.com
-d
0BE4:0100  43 6F 70 79 20 74 68 65-20 66 69 6C 65 20 74 6F   Copy the file to
0BE4:0110  20 61 20 6E 61 6D 65 20-77 69 74 68 20 61 20 2E    a name with a .
0BE4:0120  43 4F 4D 20 65 78 74 65-6E 73 69 6F 6E 2C 20 77   COM extension, w
0BE4:0130  68 65 72 65 20 74 68 65-20 62 61 73 65 20 6E 61   here the base na
0BE4:0140  6D 65 20 69 73 20 6E 6F-20 6C 6F 6E 67 65 72 20   me is no longer
0BE4:0150  74 68 61 6E 20 65 69 67-68 74 20 63 68 61 72 61   than eight chara
0BE4:0160  63 74 65 72 73 2E 0D 0A-52 75 6E 20 44 45 42 55   cters...Run DEBU
0BE4:0170  47 20 2A 79 6F 75 72 5F-66 69 6C 65 6E 61 6D 65   G *your_filename
-d
0BE4:0180  2A 0D 0A 49 74 20 77 69-6C 6C 20 67 69 76 65 20   *..It will give
0BE4:0190  61 20 27 2D 27 20 70 72-6F 6D 70 74 2E 0D 0A 54   a '-' prompt...T
0BE4:01A0  79 70 65 20 44 20 45 6E-74 65 72 20 72 65 70 65   ype D Enter repe
0BE4:01B0  61 74 65 64 6C 79 20 74-6F 20 2A 2A 64 2A 2A 69   atedly to **d**i
0BE4:01C0  73 70 6C 61 79 20 74 68-65 20 66 69 6C 65 20 31   splay the file 1
0BE4:01D0  32 38 20 62 79 74 65 73-20 61 74 20 61 20 74 69   28 bytes at a ti
0BE4:01E0  6D 65 2E 0D 0A 54 79 70-65 20 44 20 5F 61 64 64   me...Type D _add
0BE4:01F0  72 65 73 73 5F 20 74 6F-20 64 69 73 70 6C 61 79   ress_ to display
-d 200 L16
0BE4:0200  20 31 32 38 20 62 79 74-65 73 20 73 74 61 72 74    128 bytes start
0BE4:0210  69 6E 67 20 61 74                                 ing at
-

3
दुर्भाग्य से यह काम नहीं करेगा अगर फ़ाइल लगभग 64KB से बड़ी हो, तो .COM के लिए अधिकतम। (इसे ऑफसेट 100h से शुरू होने वाले सेगमेंट में फिट होना है।)
केन

1
C:\>attrib debug.exe /s। परिणाम: File not found - debug.exe। आधिकारिक पता लगाने में असमर्थ था, डिबग अब समर्थित कथन नहीं है, लेकिन मैंने वेब पर जो देखा उससे ऐसा लगता है जैसे डिबग समर्थन को थोड़ी देर पहले हटा दिया गया है। मैंने Microsoft से DebugDiag पाया। (अतिरिक्त डाउनलोड।) डिबगिंग? शायद यह HEX में फ़ाइलों को देखने का समर्थन करता है? .MSI फ़ाइल के रूप में वितरित किया गया। इंस्टॉल करने के लिए एक व्यवस्थापक पासवर्ड की आवश्यकता है। मैं एक नहीं हूं।
शैनन सेवरेंस

@ जब मैंने पहले ही head -c4096 bigFileName > smallFileNameफाइलों के पहले 4 KB को पाने के लिए linux पर उपयोग किया था । लाइनें काफी छोटी हैं कि चार केबी में मेरे उद्देश्यों के लिए बहुत सारी लाइनें हैं
शैनन सेवेरेंस

तो क्यों hexdump -Cलिनक्स पर उपयोग नहीं करते ?
केन

3
@ शेनन डीबग डॉस का हिस्सा है, और जैसे कि, यदि आप x64 का उपयोग कर रहे हैं, तो यह नहीं है।
kinokijuf

6

HxD एक पोर्टेबल हेक्स एडिटर है, जिसका अर्थ है कि कोई इंस्टॉलेशन आवश्यक नहीं है, और यह एक एकल exe फ़ाइल से अधिक कुछ भी नहीं है।

http://mh-nexus.de/en/hxd/

इसी तरह का एक और पोर्टेबल विकल्प है:

http://frhed.sourceforge.net/en/screenshots/


अच्छा लगा- इंस्टॉल करने योग्य और पोर्टेबल संस्करण हैं।
pdem

5

चूंकि विंडोज 7 में निर्मित डॉटनेट फ्रेमवर्क 3.5 के साथ आता है, इसलिए आपके पास सी # कंपाइलर होगा, जिससे आप पकड़ सकते हैं, उदाहरण के लिए, http://illegalargumentexception.blogspot.co.uk/2008/04/c- से लिस्टिंग फ़ाइल-हेक्स-डंप-एप्लीकेशन। html और फिर संकलन का उपयोग करें

  \windows\Microsoft.NET\Framework\v3.5\csc printhex.cs 

और आपको एक printhex.exe के साथ समाप्त होना चाहिए जिसमें हेक्स और एससीआई अक्षर दोनों प्रदर्शित होने चाहिए।


सरल, और विशाल डाउनलोड की कोई आवश्यकता नहीं है।
लाइव-लव

2

यह आदर्श नहीं है, लेकिन अगर आप वास्तव में कुछ भी डाउनलोड नहीं करना चाहते हैं, तो आप इस फ़ाइल की तुलना एक और पूरी तरह से अलग फ़ाइल के साथ करने के लिए fc / b (यानी फ़ाइल की तुलना बाइनरी मोड में) करके देख सकते हैं, और यह आपको हेक्स दिखाएगा प्रत्येक बाइट का मान अलग-अलग होता है। आपको कुछ मान मिल सकते हैं जो दो फ़ाइलों में समान होते हैं और इसलिए आउटपुट से छोड़ दिया जा सकता है, लेकिन आप यह बता सकते हैं कि क्या ऑफसेट कॉलम में लापता मानों की जाँच करके ऐसा होता है।


आदर्श नहीं है, लेकिन मैं 0x00 बाइट्स की फ़ाइल बनाकर ऐसा करने में सक्षम था और फिर उसी के खिलाफ तुलना करता हूं। एक टेक्स्ट फ़ाइल होने के नाते जिसे मैं देख रहा था, और यह कि मुझे 0a में दिलचस्पी थी और 0d में ज्यादातर नल की एक फाइल थी जिसकी तुलना काम की थी। लेकिन यह चरित्र दृश्य और हेक्स दृश्य दोनों को साथ-साथ प्रदान नहीं करता है, जहाँ मैं कठिन दिखना चाहता था। (जैसा कि स्कॉट के जवाब में डीबग करता है और जैसा कि एमाक्स का हेक्सल-मोड करता है। मैंने साइड व्यू के लिए नहीं पूछा था, लेकिन यह वास्तव में हेक्स डंप्स का उपयोग करने के लिए बहुत महत्वपूर्ण है।)
शैनन सेवरेंस

2

आप फ़ाइल सामग्री का एक हेक्सडंप देखने के लिए Get-Content के साथ नीचे PowerShell फ़ंक्शन का उपयोग कर सकते हैं, अर्थात Get-Content -Encoding Byte 'MyFile.bin' | Format-HexDump। 222 KB फ़ाइल को डंप करने में लगभग 23 सेकंड लगते हैं और, यदि वांछित है, तो डंप की जांच करना आसान बनाने के लिए आउटपुट को एक टेक्स्ट फ़ाइल पर रीडायरेक्ट किया जा सकता है।

$encodingAutoCompleter = {
    param($commandName, $parameterName, $wordToComplete, $commandAst, $fakeBoundParameters)
    $availableEncodings = ([System.Text.Encoding]::GetEncodings() | Select Name, CodePage, DisplayName) + @( [PSCustomObject] @{ CodePage = '20127'; Name = 'ascii'; DisplayName = 'US-ASCII' }, [PSCustomObject] @{ CodePage = '1200'; Name = 'unicode'; DisplayName = 'Unicode' } )
    $availableEncodings | ?{ $_.Name.StartsWith($wordToComplete) } | %{ New-Object System.Management.Automation.CompletionResult -ArgumentList $_.Name, $_.Name, 'ParameterValue', "$($_.DisplayName). Code Page $($_.CodePage)." }
}

function Format-BufferText([byte[]] $buffer, [System.Text.Encoding] $displayEncoding, [switch] $useControlPictures)
{
    $bufferChars = $displayEncoding.GetChars($buffer);
    $bufferText = (($bufferChars | %{ if ([char]::IsControl($_) -eq $true) { if ($useControlPictures -eq $false) { '.' } else { [char] ($_.ToInt16([cultureinfo]::InvariantCulture) + 0x2400) } } else { "$_" } }) -join "")

    $bufferText
}

<#
    .Synopsis
    Displays binary data as a hexadecimal dump.

    .Description
     Displays binary data as a hexadecimal dump. Options are available to suppress displaying text and to display control characters 
     as Unicode Control Pictures instead of dots.

    .Parameter Bytes
    The bytes to be displayed.

    .Parameter Encoding
    The name of the text encoding to use. The default is ascii.

    .Parameter NoTextDisplay
    If specified the text display sidebar will be suppressed; otherwise, the display text sidebar will be present.

    .Parameter UseControlPictures
    If specified control characters will be displayed as Unicode Control pictures; otherwise, dots are used to represent control 
    characters.

    .Example
    Format-HexDump -Encoding unicode $bytes

    .Example
    Get-Content -Encoding Byte 'MyFile.bin' | Format-HexDump -Encoding unicode

    .Example
    0..255 | Format-HexDump -NoTextDisplay
#>
function Format-HexDump
{
    [CmdletBinding()]
    param
    (
        [Parameter(ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
        [byte[]] $Bytes,
        [ValidateScript({ if (([System.Text.Encoding]::GetEncodings().Name + @('unicode', 'ascii')) -icontains $_) { return $true } else { Throw "Encoding must be one of the following: $([System.Text.Encoding]::GetEncodings().Name -join ', '), unicode, or ascii." } })]
        [Parameter(ValueFromPipeline = $false)]
        [string] $Encoding = "ASCII",
        [Parameter()]
        [switch] $NoTextDisplay,
        [Parameter()]
        [switch] $UseControlPictures
    )

    BEGIN
    {
        $displayEncoding = [System.Text.Encoding]::GetEncoding($Encoding)

        $counter = 0
        $hexRow = ""
        [byte[]] $buffer = @()
    }

    PROCESS
    {
        foreach ($byte in $Bytes)
        {
            $buffer += $byte
            $hexValue = $byte.ToString("X2")

            if ($counter % 16 -eq 0)
            {
                $buffer = @($byte)
                $hexRow = "$($counter.ToString("X8")): $($hexValue) "
            }
            elseif ($counter % 16 -eq 15)
            {
                if ($NoTextDisplay -eq $true)
                {
                    $hexRow += "$($hexValue)"
                    $hexRow
                }
                else
                {
                    $bufferText = Format-BufferText $buffer $displayEncoding $UseControlPictures
                    $hexRow += "$($hexValue)   $($bufferText)"
                    $hexRow
                }
            }
            else
            {
                $hexRow += "$($hexValue) "
            }

            $counter++
        }
    }

    END
    {
        $counter--

        if ($counter % 16 -ne 15)
        {
            $hexRow += " " * (((16 - $counter % 16) * 3) - 1)

            if ($NoTextDisplay -eq $false)
            {
                $bufferText = Format-BufferText $buffer $displayEncoding $UseControlPictures
                $hexRow += "$($bufferText)"
            }

            $hexRow
        }
    }
}

Register-ArgumentCompleter -CommandName Format-HexDump -ParameterName Encoding -ScriptBlock $encodingAutoCompleter

आउटपुट इस तरह दिखता है:

00000000: 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F   ................
00000010: 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F   ................
00000020: 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F    !"#$%&'()*+,-./
00000030: 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F   0123456789:;<=>?
00000040: 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F   @ABCDEFGHIJKLMNO
00000050: 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F   PQRSTUVWXYZ[\]^_
00000060: 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F   `abcdefghijklmno
00000070: 70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E 7F   pqrstuvwxyz{|}~.
00000080: 80 81 82 83 84 85 86 87 88 89 8A 8B 8C 8D 8E 8F   ????????????????
00000090: 90 91 92 93 94 95 96 97 98 99 9A 9B 9C 9D 9E 9F   ????????????????
000000A0: A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 AA AB AC AD AE AF   ????????????????
000000B0: B0 B1 B2 B3 B4 B5 B6 B7 B8 B9 BA BB BC BD BE BF   ????????????????
000000C0: C0 C1 C2 C3 C4 C5 C6 C7 C8 C9 CA CB CC CD CE CF   ????????????????
000000D0: D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 DA DB DC DD DE DF   ????????????????
000000E0: E0 E1 E2 E3 E4 E5 E6 E7 E8 E9 EA EB EC ED EE EF   ????????????????
000000F0: F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB FC FD FE FF   ????????????????

या सिर्फ प्रारूप-हेक्स फ़ाइल नाम का उपयोग करें
techdude 20

PowerThell के सभी संस्करणों में @techdude प्रारूप-हेक्स उपलब्ध नहीं है। यह PowerShell 4 और पूर्व में मौजूद नहीं है। प्रारूप-हेक्स के अस्तित्व में आने से पहले मैंने यह कोड लिखा था।
जेमी

इसे बाइनरी फ़ाइल पर वापस कैसे रिवर्स करें?
जोम्बा

1

जैसा कि उदात्त पाठ मेरा पसंदीदा संपादक है, मैं हेक्स फ़ाइलों को देखने के लिए इसके प्लगइन का उपयोग करता हूं। http://facelessuser.github.io/HexViewer/

HexViewer


0

मुझे पता है कि आप Emacs का उपयोग कर रहे हैं लेकिन Vim उपयोगकर्ता xxdउपयोगिता का उपयोग कर सकते हैं :

xxd -s <start_offset> -l <length_offest> <file>

अर्थात

Usage:
       xxd.exe [options] [infile [outfile]]
    or
       xxd.exe -r [-s [-]offset] [-c cols] [-ps] [infile [outfile]]
Options:
    -a          toggle autoskip: A single '*' replaces nul-lines. Default off.
    -b          binary digit dump (incompatible with -ps,-i,-r). Default hex.
    -c cols     format <cols> octets per line. Default 16 (-i: 12, -ps: 30).
    -E          show characters in EBCDIC. Default ASCII.
    -g          number of octets per group in normal output. Default 2.
    -h          print this summary.
    -i          output in C include file style.
    -l len      stop after <len> octets.
    -ps         output in postscript plain hexdump style.
    -r          reverse operation: convert (or patch) hexdump into binary.
    -r -s off   revert with <off> added to file positions found in hexdump.
    -s [+][-]seek  start at <seek> bytes abs. (or +: rel.) infile offset.
    -u          use upper case hex letters.
    -v          show version: "xxd V1.10 27oct98 by Juergen Weigert (Win32)".
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.