linux 查看 二进制文件,怎么查看二进制文件
大家好,今天来为大家分享linux 查看 二进制文件的一些知识点,和怎么查看二进制文件的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!
linux 怎么看 文件二进制
一、在Linux下查看二进制文件的软件:
xxd(2进制)
hexdump(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
只有十六进制部分的修改才会被采用。右边可显示文本部分的修改忽略不计。
linux查看二进制文件命令linux查看二进制文件
linux下怎么查看ssh的用户登录日志?
ssh用户的登录日志主要是wtmp和utmp这2个文件,分别位于/var/log/目录和/var/run目录,都是二进制文件,因此不能直接使用cat、tail等命令进行查看,需要使用who、w、users和last这4个命令进行查看,下面我简单介绍一下如何使用这4个命令来查看ssh用户登录日志:
who
这个命令主要用于列出当前已登录Linux系统的用户,如下,输出依次为用户名、tty号、登录时间以及远程连接主机IP:
如果指明了wtmp文件,则who命令会列出以前所有登录记录,如下,从上到下,时间越来越近,第一行为第一次登陆,最后一行为最后一次登陆:
w
这也是一个用于显示当前已登录Linux系统用户的命令,主要用于查看utmp文件,相比较who命令来说,它输出的信息更详细,如下,包括用户名、tty号、远程连接地址、登陆时间、空闲时间以及当前用户正在做的事(执行的命令)等:
users
这个命令也主要用于显示出当前已登录Linux系统的用户,一个会话对应一个用户,如果一个用户有多次会话,那么就会显示多次,如下:
last
这个命令主要用于显示最近曾登录Linux系统的用户,从上到下时间越来越久远,最近的会显示在最上面,最远的会显示在最下面,针对wtmp文件,如下,输出依次为用户名称、tty设备号、远程链接地址、登录时间、登出时间等,如果状态一直为still,则说明当前用户正在使用Linux系统:
至此,我们就完成了使用who、w、users和last这4个命令来查看ssh用户登录日志。总的来说,整个过程非常简单,只要你有一定的Linux基础,熟悉一下上面的命令和说明,很快就能掌握的,可以参考一下这个文章,介绍的非常详细,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言进行补充。
linux查询命令?
1.find
find是最常见和最强大的查找命令,你可以用它找到任何你想找的文件。
2.locate
locate命令其实是find-name的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库。
3.whereis
whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。
4.which
which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。
5.type
type命令其实不能算查找命令,它是用来区分某个命令到底是由shell自带的,还是由shell外部的独立二进制文件提供的。
linux系统日志收集命令?
命令为var/log/message。
记录系统重要信息的日志,记录Linux系统的绝大多数重要信息,如果系统出现问题,首先要检查的就是应该是这个日志文件;
/var/log/secure记录验证和授权方面的信息,只要涉及账户和密码的程序都会记录。比如说系统的登录,ssh的登录,su切换用户,sudo授权,甚至添加用户和修改用户密码;
/var/log/wtmp永久记录所有用户的登录、注销信息,同时记录系统的启动、重启、关机事件。同样这个文件也是一个二进制文件不能直接vi而需要使用last命令来查看;
/var/run/utmp记录当前已经登录的用户的信息。这个文件会随着用户的登录和注销而不断变化,只记录当前登录用户的信息,同样这个文件不能直接vi,要使用w,who,users等命令;
linux的where命令?
?linux基础命令中的whereis命令用于查找文件。?该指令会在特定目录中查找符合条件的文件。这些文件应属于原始代码、二进制文件,或是帮助文件。?该指令只能用于查找二进制文件、源代码文件和man手册页,一般文件的定位需使用locate命令。
linux基础命令中的whereis命令用于查找文件。
linux 怎么看完二进制文件
查看二进制文件,用od或hexdump命令。
$od-tx1-tc-AxbinFile
00000061626364653132333435616263646531
abcde12345abcde1
00001032333435616263646531323334356162
2345abcde12345ab
00002063646531323334350a
cde12345\n
000029
-tx1选项表示将文件中的字节以十六进制的形式列出来,每组一个字节(类似hexdump的-c选项)
-tc选项表示将文件中的ASCII码以字符形式列出来(和hexdump类似,输出结果最左边的一列是文件中的地址,默认以八进制显示)
-Ax选项要求以十六进制显示文件中的地址