2014-11-01 11 views
7

डिफ़ॉल्ट 16 (से 21) में hexdump में मुद्रित कॉलम की संख्या कैसे बदलें?'हेक्सडम्प' में मुद्रित कॉलम की संख्या कैसे बदलें?

या जहाँ मैं बदलने के लिए डिफ़ॉल्ट प्रारूप आदेश वहाँ इस्तेमाल किया संख्या को संशोधित करने में hexdump में इस्तेमाल किया स्ट्रिंग जगह मिल सकती है?

+6

आप इस 'हेक्सडम्प-ए '21/1 "% 02x" "\ n"' ' –

+0

@gniourf_gniourf को आजमा सकते हैं! धन्यवाद। –

+0

कृपया एक उत्तर प्राप्त करें जिसमें डिफ़ॉल्ट प्रारूप के बारे में जानकारी भी शामिल है। –

उत्तर

6

ऐसा लगता है कि डिफ़ॉल्ट प्रारूप इस प्रकार प्राप्त की है:

hexdump -e '"%07.7_Ax\n"' -e '"%07.7_ax " 8/2 "%04x " "\n"' 

man hexdump से:

Implement the -x option: 

     "%07.7_Ax\n" 
     "%07.7_ax " 8/2 "%04x " "\n" 

आप hexdump के प्रारूप को समझने के लिए चाहते हैं, तो आप मैन्युअल पढ़नी होगी, लेकिन यहां पिछले प्रारूप के माध्यम से एक छोटा सा चलना है:

  • पहला भाग %07.7_Ax\n वह हिस्सा है जो अंतिम पंक्ति को प्रदर्शित करता है जिसमें केवल ऑफसेट होता है।

    _a[dox]  Display the input offset, cumulative across input files, of the 
          next byte to be displayed. The appended characters d, o, and x 
          specify the display base as decimal, octal or hexadecimal 
          respectively. 
    
    _A[dox]  Identical to the _a conversion string except that it is only 
          performed once, when all of the input data has been processed. 
    
  • दूसरे के लिए:: मैनुअल प्रति हम अब "%07.7_ax " हिस्सा समझते हैं। 8/2 का अर्थ 8 पुनरावृत्तियों और निम्नलिखित के लिए 2 बाइट्स, अर्थात् "%04x " है। अंत में, इनके बाद, हमारे पास एक नई लाइन है: "\n"

मैं सच में यकीन है कि कैसे आप अपने 21 बाइट्स चाहते नहीं कर रहा हूँ, हो सकता है यह करना होगा:

hexdump -e '"%07.7_Ax\n"' -e '"%07.7_ax " 21/1 "%02x " "\n"' 

और आप जानते हैं ऑफसेट से छुटकारा पाने के लिए कैसे, यदि आवश्यक हो तो:

hexdump -e '21/1 "%02x " "\n"' 
संबंधित मुद्दे