我想查看当前目录中文件的内容,但从命令行以二进制格式查看。我怎样才能做到这一点呢?
当前回答
己基格式很好:sudo apt安装己基
其他回答
要将文件转换为二进制代码(十六进制表示),我们说:
xxd filename #
e.g:
xxd hello.c #
要查看二进制文件中的所有内容和代码,可以使用readelf和objdump、hexdump、... .等命令
例如,如果我们想查看一个二进制文件(可执行文件、共享库、目标文件)的所有内容,我们说:
hexdump binaryfilename
e.g.
hexdump /bin/bash
但是readelf是分析elf(可执行文件和链接格式)文件的最佳工具。如果我们说:
readelf -a /bin/bash
二进制文件bash中的所有内容都将显示给我们,我们也可以为readelf提供不同的标志,以分别查看elf文件的所有部分和头,例如,如果我们只想看到elf头,我们说:
readelf -h /bin/bash
读取文件的所有段:
readelf -l /bin/bash
读取文件的所有部分:
readelf -S /bin/sh
但是作为总结,对于读取一个普通文件,如“hello.c”和一个二进制文件,如bash在Linux路径/bin/bash,我们说:
xxd hello.c
readelf -a /bin/bash
您可以打开emacs(在终端模式下,例如使用emacs -nw),然后使用Hexl模式:M-x Hexl -mode。
https://www.gnu.org/software/emacs/manual/html_node/emacs/Editing-Binary-Files.html
hexdump -C yourfile.bin
当然,除非你想编辑它。大多数linux发行版默认都有hexdump(但显然不是全部)。
XXD处理二进制和十六进制。
bin:
xxd -b file
hex:
xxd file
作为后备方案,总是有od -xc filename
推荐文章
- bash:错误的替换
- 如何在bash中删除字符后的所有文本?
- 如何配置git bash命令行补全?
- Shell脚本:在Shell脚本中执行python程序
- /bin/sh: apt-get:未找到
- 如何检索给定相对的绝对路径
- 如何在shell管道中使用“jq”?
- 如何使用jq从JSON获得键名
- 图形化对?
- 我如何能匹配一个字符串与正则表达式在Bash?
- 为什么cURL返回错误“(23)Failed writing body”?
- 在Unix shell中计算一列数字
- 在bash脚本中否定if条件
- 如何撤消“set -e”使bash立即退出,如果任何命令失败?
- 如何在docker映像的新容器中运行bash ?