linux二进制/十六进制日志文件如何查看和编辑
使用cat查看二进制,显示乱码
[root@localhost ~]# cat /var/log/wtmp
~~~reboot3.10.0-514.el7.x86_64 �YO#5~~~runlevel3.10.0-514.el7.x86_64��Y��
,':0:0(unknown):0��YJ1':0:0:0��Y��J(:0:0bp:0��Y�m
�+pts/0/0bp:0��YMC
pts/0/0bp��Yh�
�,pts/0/0bp:0�Y�![(:0:0:0��YUpts/0/0bp��Y�`�.:0:0(unknown):0��Y�.:0:0:0��YH@�/:0:0root:0��Y���1pts/0/0root:0��Y[�\3pts/1ts/1root192.168.2.1��Y
���pts/0/0root��Y7��/:0:0:0��Y{�~~~shutdown3.10.0-514.el7.x86_64��Y�W
~~~reboot3.10.0-514.el7.x86_64��Y�W�tty1tty1�˜Y<��tty1tty1LOGIN�˜Y<�3~~~rtty3tty3טY+tty3tty3LOGINטY+tty3tty3root��Ynk tty4tty4 ��Y+T
使用xxd查看二进制文件
[root@localhost ~]# xxd /var/log/wtmp|head -20 #默认显示十六进制
0000000: 0200 0000 0000 0000 7e00 0000 0000 0000 ........~.......
0000010: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000020: 0000 0000 0000 0000 7e7e 0000 7265 626f ........~~..rebo
0000030: 6f74 0000 0000 0000 0000 0000 0000 0000 ot..............
0000040: 0000 0000 0000 0000 0000 0000 332e 3130 ............3.10
0000050: 2e30 2d35 3134 2e65 6c37 2e78 3836 5f36 .0-514.el7.x86_6
0000060: 3400 0000 0000 0000 0000 0000 0000 0000 4...............
0000070: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000080: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000090: 0000 0000 0000 0000 0000 0000 0000 0000 ................
00000a0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
00000b0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
00000c0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
00000d0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
00000e0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
00000f0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000100: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000110: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000120: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000130: 0000 0000 0000 0000 0000 0000 0000 0000 ................
[root@localhost ~]# xxd -b /var/log/wtmp|head -20 #增加-b选项转换为二进制形式
0000000: 00000010 00000000 00000000 00000000 00000000 00000000 ......
0000006: 00000000 00000000 01111110 00000000 00000000 00000000 ..~...
000000c: 00000000 00000000 00000000 00000000 00000000 00000000 ......
0000012: 00000000 00000000 00000000 00000000 00000000 00000000 ......
0000018: 00000000 00000000 00000000 00000000 00000000 00000000 ......
000001e: 00000000 00000000 00000000 00000000 00000000 00000000 ......
0000024: 00000000 00000000 00000000 00000000 01111110 01111110 ....~~
000002a: 00000000 00000000 01110010 01100101 01100010 01101111 ..rebo
0000030: 01101111 01110100 00000000 00000000 00000000 00000000 ot....
0000036: 00000000 00000000 00000000 00000000 00000000 00000000 ......
000003c: 00000000 00000000 00000000 00000000 00000000 00000000 ......
0000042: 00000000 00000000 00000000 00000000 00000000 00000000 ......
0000048: 00000000 00000000 00000000 00000000 00110011 00101110 ....3.
000004e: 00110001 00110000 00101110 00110000 00101101 00110101 10.0-5
0000054: 00110001 00110100 00101110 01100101 01101100 00110111 14.el7
000005a: 00101110 01111000 00111000 00110110 01011111 00110110 .x86_6
0000060: 00110100 00000000 00000000 00000000 00000000 00000000 4.....
0000066: 00000000 00000000 00000000 00000000 00000000 00000000 ......
000006c: 00000000 00000000 00000000 00000000 00000000 00000000 ......
0000072: 00000000 00000000 00000000 00000000 00000000 00000000 ......
[root@localhost ~]#
下面来看一下如何编辑二进制和十六进制文件
以编辑/var/log/wtmp为例
首先vi /var/log/wtmp
在vi命令模式下输入
:%!xxd 进入十六进制编辑模式
:%!xxd -b 进入二进制编辑模式
那么编辑完了怎么保存呢
首先按esc推出编辑模式
:%!xxd -r 返回vi模式
然后:wq保存退出即可
另外还有查看十六进制的hexdump命令,最简单的使用方法就是hexdump filename 就会显示十六进制文件内容
[root@localhost ~]# hexdump /var/log/wtmp|head -10
0000000 0002 0000 0000 0000 007e 0000 0000 0000
0000010 0000 0000 0000 0000 0000 0000 0000 0000
0000020 0000 0000 0000 0000 7e7e 0000 6572 6f62
0000030 746f 0000 0000 0000 0000 0000 0000 0000
0000040 0000 0000 0000 0000 0000 0000 2e33 3031
0000050 302e 352d 3431 652e 376c 782e 3638 365f
0000060 0034 0000 0000 0000 0000 0000 0000 0000
0000070 0000 0000 0000 0000 0000 0000 0000 0000
*
0000150 0000 0000 b409 5905 234f 000e 0000 0000
[root@localhost ~]#
linux二进制/十六进制日志文件如何查看和编辑的更多相关文章
- Linux下重要日志文件及查看方式
http://os.51cto.com/art/201108/282184_all.htm 1.Linux下重要日志文件介绍 /var/log/boot.log 该文件记录了系统在引导过程中发生的 ...
- linux下二机制文件的查看和编辑
linux下很多命令都是二机制:/bin/下的各种命令---/bin/sh./bin/cat./bin/dmesg./bin/hostname等 如何查看这些二机制文件: xxd.hexdump 参考 ...
- linux下 大日志文件查看与搜索---less
场景 有一个几十m的大日志文件,里边的记录是按时间排序的. 现在需要找到其中,不知道在什么位置的一条错误消息.这时候,想把内容拷出来都费劲,就算拷出来了,一般的编辑器也难以hold住这么大的文件.这时 ...
- Linux文件系统与日志文件
目录 一.inode和block 1.1.inode和block概述 1.2.inode的内容 inode包含文件的元信息: 查看inode号两种方式 目录文件的结构 1.3.inode的号码 用户通 ...
- 深入理解Linux文件系统与日志文件
目录: 一.inode与block 二.inode内容 三.inode的号码 四.inode的大小 五.链接文件 六.inode节点耗尽故障处理 七.恢复EXT类型的文件编译安装extundelete ...
- 【linux日志】【日志分析】linux系统各日志文件的含义
前段时间太忙,没有来得及管博客,最近时间充裕了,开始更新博客. 因为最近在看linux日志相关内容,把心得分享给大家 linux系统日志文件默认存放路径/var/log/ ls查看此路径下有哪些日志文 ...
- SOME:收缩数据库日志文件,查看表数据量和空间占用,查看表结构索引修改时间
---收缩数据库日志文件 USE [master]ALTER DATABASE yourdatabasename SET RECOVERY SIMPLE WITH NO_WAITALTER DATAB ...
- linux,windows下日志文件查找关键词
1.查找 /apps/tomcat/tomcat3/apache-tomcat-7.0.69/logs 目录下已.txt结尾的文件,在文件中搜索关键字 IfcmpEcrService并打印行号 /lo ...
- Linux基础命令之文件过滤及内容编辑处理(一)
. cat 功能是连接多个文件并且打印到屏幕输出,或重定向到指定的文件 五大功能: 1.查看文件内容 cat file.txt 2.合并文件内容 cat file1 file2>newfile3 ...
随机推荐
- find 命令实战巧用
一.命令简介 find 命令的 -size 参数 单位b(不是byte而是block).c.w.k.M.G.默认是单位b ,也就是1block = 512byte = 0.5kb (文件系统ext4) ...
- ubuntu 删除开机系统引导,设置快速开机和安静开机
1.隐藏开机选择界面 1.sudo gedit /etc/default/grub GRUB_HIDDEN_TIMEOUT=0 GRUB_HIDDEN_TIMEOUT_QUIET=true //隐藏开 ...
- java8 字符串转换 list long Integer
String ids= "1,2,3,4,5,6"; List<Long> listIds = Arrays.asList(ids.split("," ...
- Excel日常操作
1.固定表头 视图+冻结窗口+选择 2.下拉列表 数据+数据验证+序列+来源 筛选值也可是函数,函数值区间可以选择,然后隐藏该列数据即可 使用函数: 如果需要函数的值其他列也使用类似函数则拖动同样格式 ...
- Problem D: 求(x-y+z)*2
Description 编写一个程序,求解以下三个函数: f(x,y,z)=2*(x-y+z) f(x,y) =2*(x-y) f(x) =2*(x-1) 函数调用格式见append.cc. ...
- springboot 打包部署
springboot内置有tomcat所以我们测试的时候没有加入自己的容器 那么我们的 springboot 怎么发布呢? 1.打成 jar 2.打成 war 这种方式我就不说了,网上有教程,我觉得j ...
- git 命令篇
*利用命令在仓库新建文件 *远程克隆到本地 *查看子文件 *创建新的分支 合并分支 删除分支 *合并分支 冲突 当Git无法自动合并分支时,就必须首先解决冲突.解决冲突后,再提交,合并完成. 用g ...
- PMS5003ST+Arduino Nano OLED屏显示
整合OLED显示和PMS5003报数 #include <Arduino.h> #include <pms.h> /////////////////////////////// ...
- mysql解决数据库高并发
分表分库 数据库索引 redis缓存数据库 读写分离 负载均衡: 将大量的并发请求分担到多个处理节点,由于单个处理节点的故障不影响服务,负载均衡集群同事也实现了高可用性.
- LeetCode--1、26、27、35、53 Array(Easy)
1. Two Sum Given an array of integers, return indices of the two numbers such that they add up to ...