1. 在linux 系统下如何将二进制转换成ASCII码
在线转换器http://www.ab126.com/goju/1711.html
hexmp命令,可以将文件(不光是二进制文件)按各种格式显示,当然包括ASCII。
你可以用这个命令再配合‘>’输入到文件里,就起到转换的效果了。
2. linux 怎么看完二进制文件
查看二进制文件,用od或hexmp命令。
$od-tx1-tc-AxbinFile
abcde12345abcde1
2345abcde12345ab
00002063646531323334350a
cde12345
000029
-tx1选项表示将文件中的字节以十六进制的形式列出来,每组一个字节(类似hexmp的-c选项)
-tc选项表示将文件中的ASCII码以字符形式列出来(和hexmp类似,输出结果最左边的一列是文件中的地址,默认以八进制显示)
-Ax选项要求以十六进制显示文件中的地址
3. linux 怎么知道 默认使用什么shell 的
shell是一类脚本,是直接可以./运行的,一般不需要编译。
所以他没有二进制的说法,当然里面可以有二进制的参数等等。
如果你要以二进制形式查看的话,用hexmp命令查看。
不会使用的话,请先用man
hexmp查看使用方法。
4. Linux-hexmp命令调试event驱动
hexmp: 查看文件的内容,比如二进制文件中包含的某些字符串,通常用来调试驱动用
描述
我们以event1为例,当我们insmod挂载了键盘驱动后,出现一个event1设备,
此时没有按键按下,所以event1里面的数据是没有的,那么数据又是从来哪里来?
通过键盘驱动的read函数,若有按键按下,就会上传按键数据给用户层hexmp
因为键盘驱动的input_handler 是:evdev_handler
所以键盘驱动的read函数是: evdev_handler->evdev_fops->evdev_read
进入evdev_read()函数,如下图所示:
evdev_event_to_user()这个函数从字面上来看,显然就是用来上传给用户层的函数,其中buffer是函数参数,指向用户层,所以数据就是event.
我们来看看event的结构体:input_event
把 time里的成员展开如下:
所以我们hexmp调试任何输入子系统event XX驱动时,有信息就会打印上面数据
1.调试键盘驱动
以按开发板的按键 KEY_L,为例(因为数据是从低到高打印的,所以数据是反的):
5. 使用hexmp 查看二进制文件
byte 1个字节
short 2个字节
char 2个字节
int 4个字节
long 8个字节
float 4个字节
double 8个字节
有时候需要查看一些二进制文件的内容,比如二进制文件中包含的某些字符串。这个时候可以用hexmp工具看查看。
如果是寻找文本内容,则经常在后面用管道跟上grep命令:hexmp -C file_name |grep hellokitty
hexmp命令一般用来查看”二进制“文件的十六进制编码,但实际上它的用途不止如此,手册页上的说法是“ascii, decimal, hexadecimal, octal mp“,这也就是本文标题为什么要将”十六“给引起来的原因,而且它能查看任何文件,而不只限于二进制文件了。另外还有xxd和od也可以做类似的事情,但是我从未用过。在程序输出二进制格式的文件时,常用hexmp来检查输出是否正确。当然也可以使用Windows上的UltraEdit32之类的工具查看文件的十六进制编码,但Linux上有现成的工具,何不拿来用呢。
常用参数
如果要看到较理想的结果,使用-C参数,显示结果分为三列(文件偏移量、字节的十六进制、ASCII字符)。
格式:hexmp -C binfile
-C 输出规范的十六进制和ASCII码。来自: [ http://man.linuxde.net/hexmp]
一般文件都不是太小,最好用less来配合一下。
格式:hexmp -C binfile | less
6. linux 怎么看 文件二进制
一、在Linux下查看二进制文件的软件:
xxd (2进制)
hexmp (16进制)
二、编辑:
1、biew
2、hexedit
3、vim
Vim 来编辑二进制文件。Vim 本非为此而设计的,因而有若干局限。但你能读
取一个文件,改动一个字符,然后把它存盘。结果是你的文件就只有那一个字符给改了,
其它的就跟原来那个一模一样。
要保证 Vim 别把它那些聪明的窍门用错地方,启动 Vim 时加上 "-b" 参数:
vim -b datafile
这个参数设定了 'binary' 选项。其作用是排除所有的意外副作用。例如,'textwidth'
设为零,免得文本行给擅自排版了。并且,文件一律以 Unix 文件格式读取。
二进制模式可以用来修改某程序的消息报文。小心别插入或删除任何字符,那会让程序运
行出问题。用 "R" 命令进入替换模式。
文件里的很多字符都是不可显示的。用 Hex 格式来显示它们的值:
:set display=uhex
另外,也可以用命令 "ga" 来显示光标下的字符值。当光标位于一个 字符上时,
该命令的输出看起来就像这样:
27, Hex 1b, Octal 033
文件中也许没那么多换行符。你可以关闭 'wrap' 选项来获得总览的效果:
:set nowrap
字 节 位 置
要发现你在文件中的当前字节位置,请用这个命令:
g CTRL-G
其输出十分冗长:
Col 9-16 of 9-16; Line 277 of 330; Word 1806 of 2058; Byte 10580 of 12206
最后两个数字就是文件中的当前字节位置和文件字节总数。这已经考虑了 'fileformat'
选项导致换行符字节不同的影响。
要移到文件中某个指定的字节,请用 "Go" 命令。例如,要移到字节 2345:
2345go
使 用 XXD
一个真正的二进制编辑器用两种方式来显示文本: 二进制和十六进制格式。你可以在 Vim
里通过转换程序 "xxd" 来达到这效果。该程序是随 Vim 一起发布的。
首先以二进制方式编辑这个文件:
vim -b datafile
现在用 xxd 把这个文件转换成十六进制:
:%!xxd
文本看起来像这样:
0000000: 1f8b 0808 39d7 173b 0203 7474 002b 4e49 ....9..;..tt.+NI
0000010: 4b2c 8660 eb9c ecac c462 eb94 345e 2e30 K,.`.....b..4^.0
0000020: 373b 2731 0b22 0ca6 c1a2 d669 1035 39d9 7;'1.".....i.59.
现在你可以随心所欲地阅读和编辑这些文本了。 Vim 把这些信息当作普通文本来对待。
修改了十六进制部分并不导致可显示字符部分的改变,反之亦然。
最后,用下面的命令把它转换回来:
:%!xxd -r
只有十六进制部分的修改才会被采用。右边可显示文本部分的修改忽略不计。
7. linux这句命令什么意思 我是初学者麻烦说通俗点,dd命令
dd if=/dev/sda of=/tmp/mbr.hex bs=512 count=1
从第一块串口硬盘(常见的是stat) 的开头处,复制512字节数据,保存为/tmp/mbr.hex 文件。
这个命令,是备份硬盘的主引导记录的,即 mbr ,因为,硬盘的最开始的512字节,就是主引导记录。
后面的是另外一个命令,
hexmp 是一个十六进制数据查看工具,
hexmp -C /tmp/mbr.hex
就是使用 hexmp 打开文件 hexmp 。
8. Linux系统中hexmp的命令
查看一些二进制文件的内容,比如二进制文件中包含的.某些字符串。可以将二进制文件转换为ASCII、10进制、16进制或8进制进行查看。
-b 每一字节以八进制显示,一行共16个字节,一行开始以十六进制显示偏移值;
0000000 177 105 114 106 002 001 001 000 000 000 000 000 000 000 000 000
-c 每一字节以ASCII字符显示,其余同上;
0000000 177 E L F 002 001 001
-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 双字节十六进制显示
-e 格式化参数
上面就是Linux中hexmp命令的用法介绍了,从文中我们可以了解到,hexmp命令并不是只能查看十六进制的,还能进行十进制、八进制等的显示。
9. linux 如何判断一个文件是2进制文件
查看二进制文件,用od或hexmp命令。
1
2
3
4
5
6
7
8
$ od -tx1 -tc -Ax binFile
000000 61 62 63 64 65 31 32 33 34 35 61 62 63 64 65 31
a b c d e 1 2 3 4 5 a b c d e 1
000010 32 33 34 35 61 62 63 64 65 31 32 33 34 35 61 62
2 3 4 5 a b c d e 1 2 3 4 5 a b
000020 63 64 65 31 32 33 34 35 0a
c d e 1 2 3 4 5 \n
000029
-tx1选项表示将文件中的字节以十六进制的形式列出来,每组一个字节(类似hexmp的-c选项)
-tc选项表示将文件中的ASCII码以字符形式列出来(和hexmp类似,输出结果最左边的一列是文件中的地址,默认以八进制显示)
-Ax选项要求以十六进制显示文件中的地址
10. 如何区分linux文件类型
在 Linux 系统中,你可以使用以下几种方法来区分文件类型:
使用 file 命令:你可以使用 file 命令来查看文件的类型。例如,使用 file test.txt 命令可以查看名为 test.txt 的文件的类型。
使用 ls 命令:你可以使用 ls -l 命令来查看文件的详细信息,其中第一个字符表示文件类型。例如,文件类型为 - 表示普通文件,文件类型为 d 表示目录文件,文件类型为 l 表示符号链接文件等。
使用文件扩展名:你也可以通过文件的扩展名来区分文件类型。例如,文件名以 .txt 结尾的文件通常是文本文件,文件名以 .pdf 结尾的文件通常是 PDF 文件等。
使用文件头信息:有些文件的类型可以通过文件的头信息来区分。例如,GIF 文件的文件头为 GIF89a,JPEG 文件的文件头为 FFD8FF 等。你可以使用 hexmp 命令来查看文件的头信息。
这些就是 Linux 系统中区分文件类型的几种方法。你可以根据自己的需要选择合适的方法进行操作。