hexdump3d
無參:字符串
至關於 hexdump -x腳本
0000000 457f 464c 0102 0001 0000 0000 0000 0000文件
0000010 0002 003e 0001 0000 0410 0040 0000 0000字符
-b 每一字節以八進制顯示,一行共16個字節,一行開始以十六進制顯示偏移值;參數
0000000 177 105 114 106 002 001 001 000 000 000 000 000 000 000 000 000ab
-c 每一字節以ASCII字符顯示,其他同上;格式化
0000000 177 E L F 002 001 001 \0 \0 \0 \0 \0 \0 \0 \0 \0
-C 每一字節以16進制顯示,一行共16個字節,尾部附加16個相應的ASCII字符;
00000000 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 |.ELF............|
-n 只解釋指定長度字節
單位:默認十進制,0x或0X開頭則爲16進制,0開頭則爲8進制
默認爲字節,b則爲512字節,k則爲1024字節,m則爲1048576字節
-d 雙字節十進制顯示
-o 雙字節八進制顯示
-v 去除中間顯示的「*」字符
-x 雙字節十六進制顯示
當以上的參數不知足要求時,那麼須要加入格式化參數:
hexdump –e ‘」%06_ax」16/1」%02X」’
解釋:
-e 格式化參數
%06_ax 0:用前導零而不是空格填充顯示字段寬度
6:顯示字段寬度最小值爲6
_ax:偏移量以16進製表示,輸入文件的偏移量累積計算
16/1 格式化字符串運用16次,每次格式化字符串只運用到一個字節
%02X 0:用前導零而不是空格填充字段寬度
2:顯示字段寬度最小值爲2
X:默認操做字節數是4,可是也能夠指定爲一、二、4,並以十六進制顯示
\n 換行
例:
"%06.6_ao " 12/1 "%3_u "
"\t\t" "%_p "
"\n"
輸入文件偏移量累積計算;以八進制顯示文件偏移量,最小顯示寬度6,最大顯示寬度6
以%3_u字符串格式處理12次,每次處理1個字節;接着顯示\t\t,以%_p字符串格式處理一次,每次處理1個字節;接着換行。
echo hello | hexdump -v -e '/1 "%02X "' ; echo
-v不顯實*
-e 格式化字符串
以%02X格式串處理1次,一次處理1個字節
echo hello | hexdump -e '8/1 "%02X ""\t"" "' -e '8/1 "%c""\n"'
以%02X格式串處理8次,一次處理1個字節,添加\t,接着把處理過的文件再處按%c格式處理8次,一次處理1個字節,添加換行;
寫了個腳本,方便查閱ASCII字符表
#! /bin/shASCII="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"echo $ASCII | hexdump -v -e '"%02_ad "'\ -e '1/1 "%1c "'\ -e '1/1 "hex=%02X "'\ -e '1/1 "dec=%3d "'\ -e '1/1 "oct=%03o\n"'