国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務器 > Linux服務器 > 正文

Linux中hexdump命令用法

2024-09-05 23:04:27
字體:
來源:轉載
供稿:網友

hexdump命令一般用來查看"二進制"文件的十六進制編碼,從手冊上查看,其查看的內容還要很多,諸如:ascii, decimal, hexadecimal, octal

參數:

hexdump [-bcCdovx] [-e format_string] [-f format_file] [-n length] [-s skip] file

示例:

新增一個文本文件,在test 文本中添加如下內容:

[root@node61 test]# cat test abcdeABCDE

1)最簡單的查看

[root@node61 test]# hexdump test 0000000 6261 6463 0a65 4241 4443 0a45 000000c

第一列:表示文件文件偏移量

第二列:已兩個字節為一組的十六進制

通過上面的輸出,翻譯成文本為:badc0aeBADC0aE(注意:在Linux中換行符/n 的十六進制為0a,在windows中,換行為/r/n的十六進制編碼為:0d 0a),另:下圖為ASC碼表對應的進制編碼

Linux,hexdump命令

細心的讀者可能已經發現了,為什么翻譯成文本成倒序了呢?文本中的內容不是:abcde
ABCDE 嗎?

其實這是X86的CPU架構所致,又進行了一番研究:字節序

字節序:其實就是字節的順序,這里是針對大于兩個字節來說,一個字節就沒有排序而言了,然而,在大部分的工作中,我們都很少直接和字節序打交道。

字節序分類兩類:Big-Endian 和Little-Endian

相關定義如下:

i) Little-Endian就是低位字節排放在內存的低地址端,高位字節排放在內存的高地址端。(X86 CPU系列采用的位序)

ii) Big-Endian就是高位字節排放在內存的低地址端,低位字節排放在內存的高地址端。

iii) 網絡字節序:TCP/IP各層協議將字節序定義為Big-Endian,因此TCP/IP協議中使用的字節序通常稱之為網絡字節序。

下面的這個程序是用來判斷CPU采用的是哪種模式?

#include<stdio.h>int main(){union w { int a; char b; } c; c.a = 1; if (c.b==1){printf("The CPU is Litle-Endian/n");}else{printf("The CPU is Big-Endian/n");}return 0;} /* end checkCPU*/gcc -o checkCPU.o checkCPU.c[root@node61 test]# ./checkCPU.o The CPU is Litle-Endian

 

本人本地虛擬機的是X86的小端模式的

至此上面使用hexdump為什么是順序是倒著的原因了

有沒有更加較便于方便的查看方式了?有,這也是較常用的方式,見下面的b)介紹;

b)以16進制和相應的ASCII字符顯示文件里的字符

[root@node61 test]# hexdump -C test #常用00000000 61 62 63 64 65 0a 41 42 43 44 45 0a |abcde.ABCDE.|0000000c

這里既能顯示16進制也能顯示ascii碼

c)以偏移量格式輸出,參數 -s

[root@node61 test]# hexdump -C test 00000000 61 62 63 64 65 0a 41 42 43 44 45 0a |abcde.ABCDE.|0000000c[root@node61 test]# hexdump -C -s 6 test 00000006 41 42 43 44 45 0a |ABCDE.|0000000c

第一行的abcde換行 的字符都沒有了

其他hexdump還有很多的用法,具體可以參看man hexdump

以上就是本篇文章的全部內容,如果還有其他問題和不明白的地方可以給我們投稿或者在下方留言。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 正蓝旗| 井冈山市| 巩义市| 荔波县| 成都市| 瑞安市| 武穴市| 师宗县| 洛南县| 天峨县| 峡江县| 大余县| 阿瓦提县| 图片| 北流市| 五台县| 龙川县| 长治市| 彰化县| 定结县| 林西县| 临邑县| 安塞县| 定襄县| 固安县| 新田县| 雅江县| 张掖市| 临夏市| 中宁县| 都兰县| 阳西县| 容城县| 大邑县| 额济纳旗| 三台县| 岱山县| 治县。| 潼关县| 新营市| 久治县|