•  ——将当前文本转换为16进制格式。 :%!xxd -r  ——将当前文件转换回文本格式。 2. od - dump files in octal and other formats  顾名思义是查看八进制,可以通过指定参数为查看十六进制  -A 指定...

    1. 在 vi 或 vim 的命令状态下

    :%!xxd              ——将当前文本转换为16进制格式。

    :%!xxd -r           ——将当前文件转换回文本格式。


    2. od - dump files in octal and other formats
      顾名思义是查看八进制,可以通过指定参数为查看十六进制
      -A 指定左边侧栏显示的地址基数,默认为八进制
      -t 指定输出单元的进制格式和字节数
      -x = -t x2 输出单元为双字节(注意:每单元内排列顺序从左到右为 [高字节|低字节])
      例:
    chenglian@chenglian-desktop:~/test$ od -t x1 asm | more
    0000000 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
    0000020 02 00 03 00 01 00 00 00 54 80 04 08 34 00 00 00

    chenglian@chenglian-desktop:~/test$ od -A x -t x1 asm | more
    000000 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
    000010 02 00 03 00 01 00 00 00 54 80 04 08 34 00 00 00


    chenglian@chenglian-desktop:~/test$ od -A x -x asm | more
    000000 457f 464c 0101 0001 0000 0000 0000 0000
    000010 0002 0003 0001 0000 8054 0804 0034 0000


    2. hexdump - ascii, decimal, hexadecimal, octal dump
      查看十六机制的首选工具。
      -c 每单元以字节为单位,显示出对应的ASCII码
      -C 每单元以字节为单位,同时显示十六机制和ASCII码
      例:
    chenglian@chenglian-desktop:~/test$ hexdump -c asm | more
    0000000 177   E   L   F 001 001 001  /0  /0  /0  /0  /0  /0  /0  /0  /0
    0000010 002  /0 003  /0 001  /0  /0  /0   T 200 004  /b   4  /0  /0  /0

    chenglian@chenglian-desktop:~/test$ hexdump -C asm | more
    00000000  7f 45 4c 46 01 01 01 00  00 00 00 00 00 00 00 00  |.ELF............|
    00000010  02 00 03 00 01 00 00 00  54 80 04 08 34 00 00 00  |........T...4...|


    3. xxd - make a hexdump or do the reverse.
      能够显示文件对应的十六机制格式,同时还能将修还后的十六进制格式反写回文件,一般与vim结合使用。(利用vim的:! 参数执行外部命令)
    使用过程如下:
    (1)用vim打开要查看文件
        vim txtfile
    (2)在vim命令模式下输入
      :%!xxd
      解释: %表示文件的所有行,!xxd表示执行外部命令xxd,结合在一起,就是把当前vim上显示的所有行传递给xxd,xxd把处理后的结果重新显示在vim上。
    (3)这时候可以直接在上面修改十六进制值。注意:当前修改了十六进制值,右边侧栏的ASCII码并不会相应改变。
    (4)修改完毕后,反写回原文件。在vim命令模式下输入
     :%!xxd -r
    只有十六进制的修改部分才会被采用,右边侧栏的ASCII码值忽略不管。
    如果你不熟悉vim,可以参考vim自带的vimtutor,然后再参考
    vim cookbook ,主流的技巧就算是掌握了。
    带GUI的十六进制编辑器,可以参考ghex和bless,有很多。

    展开全文
  • Linux系统自带16进制查看器:hd和hexdump,使用方法如下: -> # cat test.c #include<stdio.h> int main(void){ printf("hello world"); reutrn 0; } -> # hexdump test.c 0000000 6923 636e 756c ...

    Linux系统自带16进制查看器:hd和hexdump,使用方法如下:

    -> # cat test.c
    #include<stdio.h>
    int main(void){
    	printf("hello world");
    	reutrn 0;
    }
    -> # hexdump test.c
    0000000 6923 636e 756c 6564 733c 6474 6f69 682e
    0000010 0a3e 6e69 2074 616d 6e69 7628 696f 2964
    0000020 0a7b 7009 6972 746e 2866 6822 6c65 6f6c
    0000030 7720 726f 646c 2922 0a3b 7209 7565 7274
    0000040 206e 3b30 7d0a 000a                    
    0000047
    -> # hd test.c
    00000000  23 69 6e 63 6c 75 64 65  3c 73 74 64 69 6f 2e 68  |#include<stdio.h|
    00000010  3e 0a 69 6e 74 20 6d 61  69 6e 28 76 6f 69 64 29  |>.int main(void)|
    00000020  7b 0a 09 70 72 69 6e 74  66 28 22 68 65 6c 6c 6f  |{..printf("hello|
    00000030  20 77 6f 72 6c 64 22 29  3b 0a 09 72 65 75 74 72  | world");..reutr|
    00000040  6e 20 30 3b 0a 7d 0a                              |n 0;.}.|
    00000047
    
    

    hd相当于在右边多了转换成字符的显示。
    hd其实是link到hexdump的,执行的命令相当于hexdump -C:

    -> # ls -l `which hd`
    lrwxrwxrwx 1 root root 7 Apr 12  2017 /usr/bin/hd -> hexdump
    

    hexdump应该是在所有的Linux系统上都有安装的:Debian,Ubuntu,centos,arch等
    除了hexdump,另外一个常用的十六进制阅读器是xxd

    -> # xxd test.c
    00000000: 2369 6e63 6c75 6465 3c73 7464 696f 2e68  #include<stdio.h
    00000010: 3e0a 696e 7420 6d61 696e 2876 6f69 6429  >.int main(void)
    00000020: 7b0a 0970 7269 6e74 6628 2268 656c 6c6f  {..printf("hello
    00000030: 2077 6f72 6c64 2229 3b0a 0972 6575 7472   world");..reutr
    00000040: 6e20 303b 0a7d 0a                        n 0;.}.
    
    
    展开全文
  • linux16进制查看文件

    2017-06-20 14:20:25
    vim 先用vim -b data 以2进制打开文件,然后用xxd工具转化,在vim的命令行模式下:  :%!xxd --将当前文本转化为...hexdump可以用来查看二进制文件的16进制结果 hexdump data 如果文件比较大可以用 hexdump

    vim

    先用vim -b data 以2进制打开文件,然后用xxd工具转化,在vim的命令行模式下:

    1.  :%!xxd        --将当前文本转化为16进制格式
    2.  :%!xxd -r    --将16进制转化为普通文本


    hexdump

    hexdump可以用来查看二进制文件的16进制结果

    hexdump data

    如果文件比较大可以用 hexdump data | less 分页显示

    如果想得到16进制和ascii码对应的显示结果,可以添加 -C参数

    hexdump -C data | less

    展开全文
  • 1. 在 vi 或 vim 的命令...xxd ——将当前文本转换为16进制格式。:%!xxd -r ——将当前文件转换回文本格式。2. od - dump files in octal and other formats 顾名思义是查看八进制,可以通过指定参数为查看十六进制

    1. 在 vi 或 vim 的命令状态下

    :%!xxd              ——将当前文本转换为16进制格式。

    :%!xxd -r           ——将当前文件转换回文本格式。


    2. od - dump files in octal and other formats
      顾名思义是查看八进制,可以通过指定参数为查看十六进制
      -A 指定左边侧栏显示的地址基数,默认为八进制
      -t 指定输出单元的进制格式和字节数
      -x = -t x2 输出单元为双字节(注意:每单元内排列顺序从左到右为 [高字节|低字节])
      例:
    chenglian@chenglian-desktop:~/test$ od -t x1 asm | more
    0000000 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
    0000020 02 00 03 00 01 00 00 00 54 80 04 08 34 00 00 00

    chenglian@chenglian-desktop:~/test$ od -A x -t x1 asm | more
    000000 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
    000010 02 00 03 00 01 00 00 00 54 80 04 08 34 00 00 00


    chenglian@chenglian-desktop:~/test$ od -A x -x asm | more
    000000 457f 464c 0101 0001 0000 0000 0000 0000
    000010 0002 0003 0001 0000 8054 0804 0034 0000


    2. hexdump - ascii, decimal, hexadecimal, octal dump
      查看十六机制的首选工具。
      -c 每单元以字节为单位,显示出对应的ASCII码
      -C 每单元以字节为单位,同时显示十六机制和ASCII码
      例:
    chenglian@chenglian-desktop:~/test$ hexdump -c asm | more
    0000000 177   E   L   F 001 001 001  /0  /0  /0  /0  /0  /0  /0  /0  /0
    0000010 002  /0 003  /0 001  /0  /0  /0   T 200 004  /b   4  /0  /0  /0

    chenglian@chenglian-desktop:~/test$ hexdump -C asm | more
    00000000  7f 45 4c 46 01 01 01 00  00 00 00 00 00 00 00 00  |.ELF............|
    00000010  02 00 03 00 01 00 00 00  54 80 04 08 34 00 00 00  |........T...4...|


    3. xxd - make a hexdump or do the reverse.
      能够显示文件对应的十六机制格式,同时还能将修还后的十六进制格式反写回文件,一般与vim结合使用。(利用vim的:! 参数执行外部命令)
    使用过程如下:
    (1)用vim打开要查看文件
        vim txtfile
    (2)在vim命令模式下输入
      :%!xxd
      解释: %表示文件的所有行,!xxd表示执行外部命令xxd,结合在一起,就是把当前vim上显示的所有行传递给xxd,xxd把处理后的结果重新显示在vim上。
    (3)这时候可以直接在上面修改十六进制值。注意:当前修改了十六进制值,右边侧栏的ASCII码并不会相应改变。
    (4)修改完毕后,反写回原文件。在vim命令模式下输入
     :%!xxd -r
    只有十六进制的修改部分才会被采用,右边侧栏的ASCII码值忽略不管。
    如果你不熟悉vim,可以参考vim自带的vimtutor,然后再参考vim cookbook ,主流的技巧就算是掌握了。
    带GUI的十六进制编辑器,可以参考ghex和bless,有很多。

    题外话,在cu上看到一篇抱怨windows下UltraEdit 的帖子。

    展开全文
  • 10进制转16进制:15 > 0xf printf '%x\n' 15 16进制转10进制:0xf > 15 printf '%d\n' 0xF echo $((16#f)) 16进制转8进制:0xF > 17 printf '%o\n' 0xF 8进制转10进制:8#17 > 15 echo...

    10进制转16进制:15 > 0xf

    printf '%x\n' 15
    

    16进制转10进制:0xf > 15

    printf '%d\n' 0xF
    
    echo $((16#f))
    

    16进制转8进制:0xF > 17

    printf '%o\n' 0xF
    

    8进制转10进制:8#17 > 15

    echo $((8#17))
    

    2进制转10进制:2#1111 > 15

    echo $((2#1111))
    

     

    展开全文
  • vim打开文件 :%!xxd 以16进制查看 :%!xxd -r 转回来 转载于:https://www.cnblogs.com/ManMonth/p/3510656.html
  • Linux--字符串转16进制

    2019-08-21 05:37:22
    1. 可以按字符遍历字符串,用printf("%x", *str)打印出16进制。 2. hexdump -C file | less 3. vim -b file, 然后:%!xxd 转载于:https://www.cnblogs.com/liyuxia713/archive/2012/05/17/2540710.html...
  • 如题,今天我们来写十进制转16进制和 2进制。二进制前面我们写过。16进制的算法和二进制差不多。都是先对进制本身进行取余作为第一位,然后对进制做除法得到的商再对进制取余作为第二位。。循环往复 下面我附上我的...
  • vi命令打开需要查看的文件: $ vi info 在vi的命令状态下,执行如下指令 : :%!xxd ——将当前文本转换为16进制格式。 :%!od ——将当前文本转换为16进制格式。 :%!xxd -c 12——将当前文本转换为...
  • /****************************... 功能:由16进制字符转换到16进制  参数:pStrH:要转换的16进制字符,  nStrHLen:16进制字符长度  pDataB :输出参数,16进制数字 ****************************************
  • linux 下读取文件并输出其 16 进制
  • 简单的二进制阅读器(或者说16进制查看器) 在学习BMP位图的构成时,对网上的收费16进制查看器很是烦躁,notepad查看时卡到放弃人生 因为只是为了初步学习图片知识,以及查看2进制文件内部构成的话,可以自己实现一个...
  • 最近有个需求是从MP3文件中提取cover,怎么提取,后续会专门写篇文章,所以需要研究MP3文件样本,这个...后来在网上查了下,用xxd在linux 下就可以看; xxd -g 1 -c 16 a.mp3 0000000: 49 44 33 04 00 00
  • *  * 17-May-2012 Auther.Zhang 0.0 Version  * Copyright & the right of find interpretation ...  * synopsis:特殊的进制转换  *  */ #include #include typedef unsigned char Uchar; //1Byte
  • linux 读取取串口信息并16进制打印输出
  • 我们在Linux服务器排查java线程的时候,需要把线程号转为16进制数,再用jstack命令打印出来。 线程号为十进制数,转为16进制的命令为: printf "%x " 线程pid; 这样子jstack命令就能用到16进制打印线程栈信息...
1 2 3 4 5 ... 20
收藏数 145,895
精华内容 58,358
关键字:

16进制 linux 查看