linux vim 16進位顯示有錯誤, 查看編輯二進位檔案時,務必加 -b 參數

來源:互聯網
上載者:User

linux vim  16進位顯示有錯誤, 查看編輯二進位檔案時,務必加 -b 參數

今天需要看16進位檔案,調試中發現不對勁,經過多方對比,發現問題出 Vim 開啟二進位檔案時,需要加 -b 參數。

vim  test.bin

:%!xxd        //顯示16進位

0000000: 0300 0800 3c0d 0000 0100 1c00 3f05 0000  ....<.......?...0000010: 2700 0000 0000 0000 0000 0000 3f00 0000  '...........?...0000020: 0000 0000 0000 0000 1a00 0000 3400 0000  ............4...0000030: 4000 0000 4e00 0000 5a00 0000 6800 0000  @...N...Z...h...0000040: 3f00 0000 3f00 0000 3f00 0000 3f00 0000  ?...?...?...?...0000050: 0601 0000 1a01 0000 2e01 0000 5601 0000  ............V...0000060: 7001 0000 3f01 0000 3f01 0000 3f01 0000  p...?...?...?...0000070: 3f01 0000 0002 0000 1402 0000 5802 0000  ?...........X...0000080: 3f02 0000 3f02 0000 3f02 0000 3f02 0000  ?...?...?...?...0000090: 1603 0000 3803 0000 5a03 0000 7803 0000  ....8...Z...x...00000a0: 3f03 0000 3f03 0000 3f03 0000 3f03 0000  ?...?...?...?...00000b0: 1404 0000 3604 0000 7004 0000 3f04 0000  ....6...p...?...

vim -b test.bin

:%!xxd        //顯示16進位

0000000: 0300 0800 3c0d 0000 0100 1c00 8805 0000  ....<...........0000010: 2700 0000 0000 0000 0000 0000 b800 0000  '...............0000020: 0000 0000 0000 0000 1a00 0000 3400 0000  ............4...0000030: 4000 0000 4e00 0000 5a00 0000 6800 0000  @...N...Z...h...0000040: 8600 0000 9800 0000 f000 0000 f400 0000  ................0000050: 0601 0000 1a01 0000 2e01 0000 5601 0000  ............V...0000060: 7001 0000 8401 0000 9a01 0000 b801 0000  p...............0000070: c801 0000 0002 0000 1402 0000 5802 0000  ............X...0000080: 8402 0000 b402 0000 d202 0000 f402 0000  ................0000090: 1603 0000 3803 0000 5a03 0000 7803 0000  ....8...Z...x...00000a0: 8c03 0000 a203 0000 e603 0000 fe03 0000  ................00000b0: 1404 0000 3604 0000 7004 0000 ba04 0000  ....6...p.......

按 short 顯示, 超過 7ffff的資料都會顯示錯誤

如果需要編輯,只有十六進位部分的修改才會被採用。右邊可顯示文本部分的修改忽略不計。



================================================================
  編輯完了以後,我們需要還原為二進位檔案:
  :%!xxd -r #參數-r是指將當前的十六進位轉換為二進位
  
  好了,儲存退出:
  :wq

一個真正的二進位編輯器用兩種方式來顯示文本: 二進位和十六進位格式。你可以在 Vim
裡通過轉換程式 "xxd" 來達到這效果。該程式是隨 Vim 一起發布的。
首先以二進位方式編輯這個檔案:

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.